我们来看看如何在PHP中处理HTTP请求。
PHP默认提供基于文件的路由。你创建一个index.php 文件,该文件在/ 路径上响应。
我们在一开始做Hello World的例子时看到了这一点。
同样地,你可以创建一个test.php 文件,并自动将其作为Apache在/test 路由上提供的文件。
$_GET,$_POST 和$_REQUEST
文件响应所有的HTTP请求,包括GET、POST和其他动词。
对于任何请求,你都可以使用$_GET 对象来访问所有的查询字符串数据,这个对象被称为superglobal,在我们所有的PHP文件中自动可用。
这当然在GET请求中最有用,但其他请求也可以作为查询字符串发送数据。
对于 POST、PUT 和 DELETE 请求,你更可能需要以 urlencoded 数据或使用 FormData 对象来发布数据,PHP 使用$_POST 来提供这些数据。
还有$_REQUEST ,它将所有的$_GET 和$_POST 合并在一个变量中。
$_SERVER
我们还有一个超全局变量$_SERVER ,用它来获得很多有用的信息。
你以前看过如何使用phpinfo() 。让我们再次使用它,看看$_SERVER为我们提供的东西。
在你的index.php 文件中,在MAMP的根目录下运行:
<?php
phpinfo();
?>
然后在localhost:8888生成页面并搜索$_SERVER ,你会看到所有存储的配置和分配的值。

你可能会用到的重要配置有
$_SERVER['HTTP_HOST']$_SERVER['HTTP_USER_AGENT']$_SERVER['SERVER_NAME']$_SERVER['SERVER_ADDR']$_SERVER['SERVER_PORT']$_SERVER['DOCUMENT_ROOT']$_SERVER['REQUEST_URI']$_SERVER['SCRIPT_NAME']$_SERVER['REMOTE_ADDR']