$_POST contre $_SERVER['REQUEST_METHOD'] == 'POST'

Certains gars qui s'appelle un de mes Snipplr mémoires "de la merde" parce que j'ai utilisé if ($_SERVER['REQUEST_METHOD'] == 'POST') au lieu de if ($_POST)

La vérification de la demande de la méthode semble plus correct pour moi parce que c'est ce que je veux vraiment faire. Est-il opérationnel différence entre les deux ou est-ce juste un code de clarté problème?

  • Dire que le gars il suce.
  • surtout depuis que <gnud> le mentionne dans sa réponse, ils ne sont pas les mêmes et ($POST) est une sorte de "hack" dans votre vérifier si un tableau, qui seulement se présenter lors d'une requête POST, existe. Aussi à la demande de la méthode peut être utilisée dans d'autres cas, comme vous.
  • Vous devez utiliser === au lieu de == ici comme 0 == 'POST'.
  • $_SERVER["REQUEST_METHOD"] peut contenir des "POST" pour les requêtes HTTP GET sur du PHP+Apache2 installations. Comme le mien. Et voilà comment je suis arrivé ici.
  • Si c'est vrai (ce dont je ne crois pas qu'il est), c'est une grave bug grave. Pouvez-vous fournir un lien vers un PHP ou Apache rapport de bug? Étapes pour reproduire? Comme il est, je ne vous crois pas.
  • Pourquoi $_SERVER['REQUEST_METHOD'] jamais être le nombre 0? Pour autant que je sais, c'est impossible.
  • C'est une question de foi. Vraiment.
  • Hmm première fois que j'ai jamais rencontré ce. Dernière équipe, j'ai travaillé sur if ( $_POST ) tous sur la place (même s'ils ont été connus pour faire beaucoup de choses de manière incorrecte). Je suis content que vous posiez cette. Je suis juste 10 ans de retard, hah.

InformationsquelleAutor Scott | 2009-01-03