en passant de réseau POSTE à la fonction php
Puis-je passer l'ensemble du réseau POSTE dans une fonction et de les traiter au sein de la fonction?
comme
PostInfo($_POST);
function PostInfo($_POST){
$item1 = $_POST[0];
$item2 = $_POST[1];
$item3 = $_POST[2];
//do something
return $result;
}
ou est-ce la bonne manière de procéder?
Ceux-ci sont variable superglobale. Vous pouvez les voir dans toutes les fonctions, si register_global est sur.
Veuillez noter que
À droite, c'était mon autre conjecture quant à son utilisation. Ne me souviens pas exactement, mais je savais que le Fia a été mauvais. En tout cas,
Connexes: PHP: $_GET et $_POST dans les fonctions?
Veuillez noter que
register_globals
(pas register_global
) n'est pas requis pour l'utilisation de $HTTP_POST_VARS
(le non-superglobale et obsolètes frère à $_POST
)! Voir ici: de.php.net/manual/en/ini.core.php#ini.register-globalsÀ droite, c'était mon autre conjecture quant à son utilisation. Ne me souviens pas exactement, mais je savais que le Fia a été mauvais. En tout cas,
register_globals
est mauvais! Au-delà de ça, c'est obsolète. Ne l'utilisez pas!Connexes: PHP: $_GET et $_POST dans les fonctions?
OriginalL'auteur mrpatg | 2009-11-02
Vous devez vous connecter pour publier un commentaire.
Oui. Si vous allez pour le nom de la variable locale
$_POST
bien, ne vous inquiétez pas.$_POST
est un "superglobale", un global qui ne nécessite pas laglobal
mot-clé à utiliser à l'extérieur de la normale de la portée. Votre fonction ci-dessus pourrait fonctionner sans le paramètre sur elle.OriginalL'auteur Matthew Scharley
Vous pouvez passer à $_POST d'une fonction qui prend un tableau.
Idéal pour les tests.
OriginalL'auteur Extrakun
La
$_POST
-tableau est un tableau comme tous les autres array en PHP (en plus d'être un soi-disant superglobale), de sorte que vous pouvez passer en tant que paramètre de la fonction, le passer autour et même de changer (même si cela peut ne pas être sage dans la plupart des situations).Au sujet de votre code, j'aimerais changer un peu pour le rendre plus clair:
Ce sera visiblement séparée argument de la fonction de la
$_POST
superglobale. Une autre option serait de la simple suppression de l'argument de fonction et de s'appuyer sur la superglobale-des capacités de$_POST
:OriginalL'auteur Stefan Gehrig