Divers

[PHP] faire passer file_get_contents par un proxy

dans le cas où un serveur n'accepte les connexions sortante qu'en passant par un proxy, voici comment utiliser la fonction file_get_contents

$aContext = array(
    'http' => array(
	 'proxy' => 'tcp://'.$proxyHTTPIP.':'.$proxyHTTPPort,
	 'request_fulluri' => true,
    ),
);
$cxContext = stream_context_create($aContext);
$file = file_get_contents("URL_A_APPLER", false, $cxContext);

fonction de nettoyage de chaine de caractères

voici une fonction qui permet de nettaoyer une chaine de tout ce qui n'est pas alphanumérique, les caractères accentués, les blancs, etc.

function slugify($text) {
        $alphabet = array(
            'Š'=>'S', 'š'=>'s', 'Ð'=>'Dj','Ž'=>'Z', 'ž'=>'z', 'À'=>'A', 'Á'=>'A', 'Â'=>'A', 'Ã'=>'A', 'Ä'=>'A',
            'Å'=>'A', 'Æ'=>'A', 'Ç'=>'C', 'È'=>'E', 'É'=>'E', 'Ê'=>'E', 'Ë'=>'E', 'Ì'=>'I', 'Í'=>'I', 'Î'=>'I',
            'Ï'=>'I', 'Ñ'=>'N', 'Ò'=>'O', 'Ó'=>'O', 'Ô'=>'O', 'Õ'=>'O', 'Ö'=>'O', 'Ø'=>'O', 'Ù'=>'U', 'Ú'=>'U',
            'Û'=>'U', 'Ü'=>'U', 'Ý'=>'Y', 'Þ'=>'B', 'ß'=>'Ss','à'=>'a', 'á'=>'a', 'â'=>'a', 'ã'=>'a', 'ä'=>'a',
            'å'=>'a', 'æ'=>'a', 'ç'=>'c', 'è'=>'e', 'é'=>'e', 'ê'=>'e', 'ë'=>'e', 'ì'=>'i', 'í'=>'i', 'î'=>'i',
            'ï'=>'i', 'ð'=>'o', 'ñ'=>'n', 'ò'=>'o', 'ó'=>'o', 'ô'=>'o', 'õ'=>'o', 'ö'=>'o', 'ø'=>'o', 'ù'=>'u',
            'ú'=>'u', 'û'=>'u', 'ý'=>'y', 'ý'=>'y', 'þ'=>'b', 'ÿ'=>'y', 'ƒ'=>'f'
        );

        if(empty($text)) return 'n-a';

        $text = str_replace('&', '-and-', $text);
        $text = strtr ($text, $alphabet);

        // replace all non letters or digits by -
        $text = preg_replace('/\W+/', '-', $text);

        // trim and lowercase
        $text = strtolower(trim($text, '-'));

        return $text;
    }

Tags:

Obtenir la vraie adresse IP d'un visiteur

voici une fonction qui retourne l'adresse IP finale de l'utilisateur, celle de son réseau local (souvent en 192.168.X.X ou 10.0.X.X) si pas disponible, la fonction retourne l'adresse IP publique

function getRealIp()
{
     $ip = null;
     if(!empty($_SERVER['HTTP_CLIENT_IP'])){
          $ip = $_SERVER['HTTP_CLIENT_IP'];
     }
     if(!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
          $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
     }
     return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
}

Tags:

Cheat sheet php

en pièce jointe à ce post la cheat sheet en png.

vous pouvez la télécharger ici : Cheat sheet php

trouvé sur : AddedBytes.com

Tags:

Fonction somme (sum)

voici pour notre 2ème snippet une fonction sum, peut-être pas très utile, mais j'iame bien le principe :)

function sum(){
    $s=0;
    foreach(func_get_args() as $a) $s+= is_numeric($a)?$a:0;
    return $s;
};
 
print sum(1,2,3,4,5,6); // will return 21
print sum(3,2,1); // will return 6
print sum(false,array(),5,5); // will return 10

Tags:

Pages

Subscribe to RSS - Divers