Итак, какое-то время я использовал следующее, чтобы проверить, были ли установлены мои данные post.
if( ! empty( $_POST ) ) { }
Но в последнее время я видел много сообщений, говорящих, что выше это "взломать", а ниже - правильный "лучший" способ.
if( $_SERVER[ 'REQUEST_METHOD' ] === 'POST' ) { }
В последнее время я просто хочу сказать, что недавно нашел его. Все сообщения, которые обсуждают этот более поздний метод, относятся к 2009 году. Немного устаревшая по стандартам кодирования, поэтому я считаю, что это нормально, чтобы получить новое мнение по этой теме.
Я понял, что эти два метода разные. Первый считается "взломом", который просто проверяет, установлен ли массив сообщений, что произойдет, если будет сделан запрос на отправку. Второй фактически проверяет сервер, чтобы увидеть, был ли выполнен запрос на отправку. Я предполагаю, что второй может быть немного более безопасным, но если информация очищается, я не вижу, как это имеет большое значение.
Я также видел сообщения о том, что позже использовался только в версиях PHP <= 4, потому что PHP по-прежнему использовал глобальный $_REQUEST
в данный момент, и именно так PHP-кодировщики использовали для определения источника определенного запроса paramters. Я не уверен, насколько точна эта последняя заявка, потому что вопросы, поставленные в старых сообщениях, такие же, как мои. Они используют сообщение global и не запрашивают. Однако это более поздняя публикация, чем любая другая (2011), и из источника, которому я доверяю. Поэтому я не уверен, что с этим делать.
А что делать при проверке на получение? Я видел, что несколько мест говорят, что в этом случае метод запросов на сервер не работает, и я могу только предположить, что это потому, что post supercedes get и метод запроса может содержать только один параметр. Итак, если у вас есть почта и данные, что вы делаете? Комментарий к одному из этих сообщений предполагает использование запроса global вместо post и get, но у меня сложилось впечатление, что это плохая идея.
Этот является самым последним источником, который я мог найти, и я сделал это, просмотрев похожие вопросы на стороне перед отправкой. Он специально спрашивает об использовании значения отправки, чтобы проверить, прошла ли форма, но также упоминает метод запроса. Многие из них, похоже, указывают на то, что позже все еще используется. Так ли этот совет по-прежнему действителен? Проверяет ли метод запроса еще лучший вариант?