* Functia intoarce prima valoare valida dintre urmatoarele:
* HTTP_CLIENT_IP
* HTTP_X_FORWARDED_FOR
* REMOTE_ADDR (cu getenv)
* REMOTE_ADDR (din $_SERVER)
* "unknown" (in cazul in care niciuna dintre cele de mai sus nu este valida) * * @author ACTIVESOFT * @return String */ function get_ip() { if ( getenv( "HTTP_CLIENT_IP" ) && strcasecmp( getenv( "HTTP_CLIENT_IP" ), "unknown" ) ){ $ip = getenv("HTTP_CLIENT_IP"); }else{ if ( getenv( "HTTP_X_FORWARDED_FOR" ) && strcasecmp( getenv( "HTTP_X_FORWARDED_FOR" ), "unknown" ) ) { $ip = getenv("HTTP_X_FORWARDED_FOR"); }else{ if ( getenv( "REMOTE_ADDR" ) && strcasecmp( getenv( "REMOTE_ADDR" ), "unknown" ) ) { $ip = getenv("REMOTE_ADDR"); }else{ if ( isset( $_SERVER[ 'REMOTE_ADDR' ] ) && $_SERVER[ 'REMOTE_ADDR' ] && strcasecmp ($_SERVER[ 'REMOTE_ADDR' ], "unknown" ) ) { $ip = $_SERVER['REMOTE_ADDR']; }else{ $ip = "unknown"; } } } } return $ip; } /** * Functie care formateaza o expresie intr-un string capabil de a fi introdus * intr-un url * * @author Adrian Popa * @param String $string * @param String $separator * @return String */ function link_style( $string, $separator = "_" ) { $content = str_replace("?","A", $string); $content = str_replace("?","a" , $content); $content = str_replace("?","A", $content); $content = str_replace("?","a", $content); $content = str_replace("?","I", $content); $content = str_replace("?","i", $content); $content = str_replace("?","S", $content); $content = str_replace("?","s", $content); $content = str_replace("?","T", $content); $content = str_replace("?","t", $content); $content = str_replace("?","a", $content); $content = str_replace("/","-", $content); $content = str_replace("?", "t", $content); $content = str_replace("?", "A", $content); $content = str_replace("?", "S", $content); $content = str_replace("?", "s", $content); $content = str_replace("?", "T", $content); $content = str_replace("?", " ", $content); $content = str_replace("=",",", $content); $content = str_replace("+"," ", $content); $content = str_replace(" "," ",$content); $content = str_replace(" ","",$content); $content = trim($content); $content = ereg_replace("[^[:alnum:]+]","$separator",$content); $content = eregi_replace("([".$separator."]+)",$separator,$content); return $content; } /** * Functie care intoarce extensia unui fisier * * @author Paul Cocei * @param String $filename * @return String */ function get_extension($filename) { $bucati = explode(".", $filename); return strtolower($bucati[count($bucati) - 1]); } /** * Functie care verifica validitatea unei adrese de e-mail
* Reguli:
* * * @param String $email * @return Boolean */ function is_email( $email ) { $email=trim($email); $pattern="([a-zA-Z0-9][a-zA-Z0-9._-]*)@(([a-zA-Z][a-zA-Z0-9._-]*)\.)+([a-zA-Z][a-zA-Z0-9]*)"; ereg($pattern,$email,$regs); if ($regs[0]!=$email || $email=="") { return false; } return true; } /** * Functie care trunchiaza inteligent un string la lungimea dorita * * @param String $string - Stringul sursa * @param Integer $lungime - Lungimea la care se trunchiaza (default: 30) * @return String */ function inceput_str( $string, $lungime=30 ) { if (strlen( $string )< $lungime ) { $res = $string; }else{ $aux = wordwrap( $string, $lungime, ' ...', 1 ); $pos = strpos( $aux, ' ...' ); $res = substr( $aux, 0, $pos+4 ); } $res=strtr( $res, "\n", ' ' ); return $res; } /** ALIASURI */ /** * Alias pentru functia date_to_str * * @deprecated * @author ACTIVESOFT * @param String $date * @param Integer $caz * @param Integer $l * @return String * @see date_to_str */ function date2str( $date = '', $caz = 3, $l = 1 ) { return date_to_str( $date, $caz, $l ); } /** * Alias pentru functia get_ip * * @deprecated * @author ACTIVESOFT * @return String * @see get_ip */ function getip(){ return get_ip(); } /** * Functie care scrie un mesaj intr-un fisier de log, formatat corespunzator * impreuna cu momentul scrierii * * @author ACTIVESOFT * @copyright ACTIVESOFT * @version 1.0 * @param String $logfile - Fisierul log * @param String $message - Mesajul * @return Boolean */ function write_to_log( $logfile, $message ) { $fp = fopen( $logfile, "a" ); if ( ! $fp ) { return false; } $message = "[" . date( "Y-m-d H:i:s" ) . "] " . $message . "\n"; if ( fwrite( $fp, $message ) ) { $ret = true; }else{ $ret = false; } fclose( $fp ); return $ret; } ?>