Maison >développement back-end >tutoriel php >Pourquoi utiliser `$_REQUEST` en PHP est-il risqué ?
Les dangers de l'utilisation de $_REQUEST : une fausse commodité
Bien que la variable $_REQUEST puisse apporter une facilité temporaire, elle cache un problème fondamental qui peut conduire à des failles de sécurité potentielles et à des comportements erronés.
Le piège de Inclusion de cookies superflus
Contrairement aux paramètres de soumission de formulaire ($_GET et $_POST), les cookies sont des entités distinctes qui ne doivent pas être traitées de la même manière. Par défaut, $_REQUEST combine les trois sources : $_GET, $_POST et $_COOKIE. Cela peut entraîner des conflits lorsqu'un nom de cookie coïncide avec un paramètre de formulaire, ce qui entraîne le remplacement du paramètre par la valeur du cookie.
Cela peut être particulièrement problématique lorsque plusieurs applications résident sur le même site Web, car cela peut entraîner à des dysfonctionnements involontaires de forme. Même si quelques utilisateurs seulement conservent d'anciens cookies, les conséquences peuvent être imprévisibles et difficiles à diagnostiquer.
Atténuer les risques
Pour éviter ces pièges, il est conseillé de évitez $_REQUEST. Dans les scénarios où un tableau combiné GET et POST est requis, il est préférable de l'assembler manuellement.
Dans PHP 5.3 et versions ultérieures, vous pouvez modifier le comportement par défaut de $_REQUEST pour exclure les cookies en définissant la configuration request_order. à "GPC". Cependant, si cela n'est pas réalisable, la construction manuelle du tableau combiné reste l'approche la plus sûre.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!