Par Nicolas SUPRIN, jeudi 20 avril 2006 à 14:39 | PHP | #38 | rss
Cette méthode permet d'acceder plus facilement aux variables d'environement de PHP que les tableaux $_XXX
Avant :
Afin de ne pas générer de warning si une variable n'est pas présente dans un GET / POST... , on est obligés de tester si elle est SET avec isset(), c'est assez lourdingue.
$S_maVariable = null; if (isset($_REQUEST{'maVariable'}) { $S_maVariable = $_REQUEST{'maVariable'}; }
La méthode
Dans une classe boite à outils que j'appelle Utils, j'ajoute cette méthode statique :
/** * @desc retourne la valeur d'un parametre de l'environnement * @author NSN <nicolas.suprin@cactuscrew.com> * @access public * @param string $S_nom nom du parametre * @param string $S_type cookie/env/file/get/post/request/server/session/ * @return void * @copyright Thu Apr 20 13:55:30 CEST 2006 * @version 1.0 * @since 1.0 */ public static function getVar($S_nom, $S_type = 'REQUEST') { $S_return = null; // --- copie les variables d'environnement $COOKIE = $_COOKIE; $ENV = $_ENV; $FILES = $_FILES; $GET = $_GET; $POST = $_POST; $REQUEST = $_REQUEST; $SERVER = $_SERVER; $SESSION = $_SESSION; // --- mise en MAJ $S_type = strtoupper($S_type); // --- si le type existe if (isset($$S_type)) { $var = $$S_type; // --- si le paramtre existe if (isset($var[$S_nom])) { $S_return = $var[$S_nom]; } } return $S_return; }
Exemple
/** va chercher dans le $_REQUEST (par défaut) */ $S_maVariable = Utils::getVar('maVariable'); /** va chercher dans la Session */ $S_maSession = Utils::getVar('maSession', 'session');
Avantage : nettement moins lourd à écrire, et cette methode fonctionne aussi bien pour tous les tableaux de variables d'environnement : $_COOKIE $_ENV $_FILES $_GET $_POST $_REQUEST $_SERVER $_SESSION






Aucun commentaire pour le moment.
Aucun trackback.
Pour faire un trackback sur ce billet : http://www.blog.cactuscrew.com/tb.php?id=38&chk=hxcjzp