Login   Register  
PHP Classes
elePHPant
Icontem

File: functions.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of rche  >  PHP Comments  >  functions.php  >  Download  
File: functions.php
Role: Application script
Content type: text/plain
Description: Support functions for comments class
Class: PHP Comments
Manage comments stored in a MySQL database
Author: By
Last change:
Date: 1 year ago
Size: 3,544 bytes
 

Contents

Class file image Download
<?php
/*
 *
 *    PHP script comments.
 *    Version: 1.0 (beta)
 *    Late: 06.11.2012
 *    Autor: Chernyshov Roman
 *    Site: http://rche.ru
 *    E-mail: houseprog@ya.ru
 *
 */


function add_pr ($str,$count)
    {
//    $st=preg_replace("/([.,;-])/","\${".$count."}?",$str);
    
$str=iconv('UTF-8','WINDOWS-1251',$str);
    
$i 0;$no_pr 0;$j 1;
    while (
$i strlen($str))
        {
        
$text[$j] = $text[$j].$str[$i];
        if (
$str[$i] == ' '){$no_pr 0;$j $j+1;}
        if (
$str[$i] != ' '){$no_pr $no_pr+1;}
        if (
$no_pr == $count){$text[$j] = $text[$j].' ';$no_pr 0;}
        
$i $i+1;
        }
    while (
$j != 0){$st $st.$text[$j];$j $j-1;}
    
$st=iconv('WINDOWS-1251','UTF-8',$st);
    return 
$st;
    }

function 
PHP_slashes($string,$type='add')
{
    if (
$type == 'add')
    {
        if (
get_magic_quotes_gpc())
        {
            return 
$string;
        }
        else
        {
            if (
function_exists('addslashes'))
            {
                return 
addslashes($string);
            }
            else
            {
                return 
mysql_real_escape_string($string);
            }
        }
    }
    else if (
$type == 'strip')
    {
        return 
stripslashes($string);
    }
    else
    {
        die(
'error in PHP_slashes (mixed,add | strip)');
    }
}
if(!
function_exists('utf8_strlen'))
    {
    function 
utf8_strlen($s)
        {
        return 
preg_match_all('/./u'$s$tmp);
        }
    }

if(!
function_exists('utf8_substr'))
    {
    function 
utf8_substr($s$offset$len 'all')
        {
        if (
$offset<0$offset utf8_strlen($s) + $offset;
        if (
$len!='all')
            {
            if (
$len<0$len utf8_strlen2($s) - $offset $len;
            
$xlen utf8_strlen($s) - $offset;
            
$len = ($len>$xlen) ? $xlen $len;
            
preg_match('/^.{' $offset '}(.{0,'.$len.'})/us'$s$tmp);
            }
            else
            {
            
preg_match('/^.{' $offset '}(.*)/us'$s$tmp);
            }
        return (isset(
$tmp[1])) ? $tmp[1] : false;
        }
    }
if(!
function_exists('utf8_strpos'))
    {
function 
utf8_strpos($str$needle$offset null)
      {
          if (
is_null($offset))
          {
              return 
mb_strpos($str$needle);
          }
          else
          {
              return 
mb_strpos($str$needle$offset);
          }
      }
}
function 
getAllcache($sql$time=600$filename='') {
    global 
$DB$system_query_cache;
    if(!
$system_query_cache)$time=0;
    
$crc=md5($sql); 
    if(!empty(
$filename))$crc=$filename;
    
$modif=time()-@filemtime ("cache/".$crc);
    if (
$modif<$time)
        {
        
$cache=file_get_contents("cache/".$crc);
        
$cache=unserialize($cache);
        }
        else 
        {
        
$cache $DB->getAll($sql);
        
$fp = @fopen ("cache/".$crc"w");
        @
fwrite ($fpserialize($cache));
        @
fclose ($fp); 
        }
        return 
$cache;
}
function 
getOnecache($sql$time=600,$filename='') {
    global 
$DB$system_query_cache;
    if(!
$system_query_cache)$time=0;
    
$crc=md5($sql); 
    if(!empty(
$filename))$crc=$filename;
    
$modif=time()-@filemtime ("cache/".$crc);
    if (
$modif<$time)
        {
        
$cache=file_get_contents("cache/".$crc);
        
$cache=unserialize($cache);
        }
        else 
        {
        
$cache $DB->getOne($sql);
        
$fp = @fopen ("cache/".$crc"w");
        @
fwrite ($fpserialize($cache));
        @
fclose ($fp); 
        }
        return 
$cache;
}
function 
email_check($email) {
    if (!
preg_match("/^(?:[a-z0-9]+(?:[-_.]?[a-z0-9]+)?@[a-z0-9_.-]+(?:\.?[a-z0-9]+)?\.[a-z]{2,5})$/i",trim($email)))
        {
         return 
false;
        }
        else return 
true;
    }
function 
isIP($ip
    {
    return (bool)(
ip2long($ip)>0);
    }; 
function 
getIP() {
   if(isset(
$_SERVER['HTTP_X_REAL_IP'])) return $_SERVER['HTTP_X_REAL_IP'];
   return 
$_SERVER['REMOTE_ADDR'];
}