HTTP-протокол (*) указывает, как браузер должен отправить запрос.
HTTP в основном состоит из набора заголовков в виде обычного текста, разделенных линейными каналами, а затем передаваемых данных. Внутри HTTP-запроса данные POST фактически отформатированы практически так же, как и данные GET; это просто в другой части заголовков HTTP.
Вы можете использовать такие инструменты, как Firebug или Fiddler, чтобы точно определить, как заголовки и данные отформатированы для входящих и исходящих HTTP-запросов. На самом деле все довольно просто читать, поэтому вы должны иметь возможность работать, просто просматривая.
Как только он попадает на сервер, интерпретатор PHP отвечает за перевод необработанных данных запроса HTTP в его стандартные переменные $ _GET, $ _POST и т. Д. Это то, что PHP делает для вас.
Другие языки (например, Perl) не имеют встроенных функций, поэтому программисту Perl необходимо будет иметь код в своей программе для анализа входящих данных запроса в полезные переменные. К счастью, даже Perl имеет стандартную библиотеку, которая может быть включена, которая выполняет эту работу, поэтому даже программистам на Perl обычно не нужно писать код самостоятельно.
Путь PHP и любой другой язык, это просто манипуляции с строкой. Как я уже сказал, HTTP-данные являются обычным текстом и принимаются в простом строковом формате, поэтому это просто случай его разбиения путем разбиения его на вопросительный знак и равные знаковые символы.
Поскольку PHP делает все за кулисами, вам, вероятно, не нужно беспокоиться о конкретных механизмах, которые он использует, но исходный код PHP доступен, если вы действительно хотите это выяснить.
Я сказал, что все это в обычном тексте. HTTPS, конечно, зашифрован. Однако к тому моменту, когда PHP овладеет им, сервер Apache уже выполнил дешифрование, поэтому, насколько это касается PHP, это все еще простой текст.
(*) Прежде, чем кто-нибудь меня подтянет, да, я знаю, что «HTTP-протокол» - это избыточность, например «ATM-машина» или «PIN-код».
что это делает для.) – abel
Он преобразует его в '_' – Quentin
Он превращает' .' в '_' (по историческим причинам, в основном, используется для того, чтобы каждая переменная в форме превратилась в реальную переменную. Google для« register_globals »для получения подробной информации о эта последняя часть). – cHao