来自外部源的PHP变量
介绍
PHP的变量命名空间由外部来源填充,例如HTML表单元素,Cookie和图像提交按钮的屏幕坐标
HTML表单元素
当网页以HTML格式向PHP脚本提交数据时,该脚本将自动以$_POST,$_GET和$_REQUEST变量的形式提供给脚本。以下是典型的HTML表单
<form action="testscript.php" method="POST"> <input type="text" name="name"> <input type="text" name="age"> <input type ="submit" valaue="submit"> </form>
用户输入的数据在PHP脚本中填充为$_POST关联数组
<?php echo "Name : " . $_POST["name"] . "<br>"; echo "Age : " . $_POST["age"]; ?>
将HTML页面与testscript.php一起放在文档根目录中。在浏览器中打开并输入数据
Name : xyz Age : 20
在HTML格式中使用method='GET'导致使用HTTPGET方法请求URLinaction属性。表单中的数据填充在$_GET数组中。$_REQUEST数组提供$_GET,$_POST和$_COOKIE预定义变量的内容。例如,名为“age”的表单元素中的数据将以$_GET['age']和$_REQUEST['age']的形式提供
图像按钮坐标
在标准的提交按钮中,HTML允许将任何图像用作具有图像输入类型的按钮
<input type="image" src="image.gif" name="sub" />
在这种情况下,当用户单击图像时,屏幕尺寸的x和y坐标也会作为请求发送,并且可以作为$_POST['sub_x']和$_POST['sub_y']访问
Cookie变量
PHP支持cookie的存储和检索机制。Cookie是服务器在发送响应时存储在客户端计算机中的数据。客户端的每个后续请求都将cookie连同所请求的参数(例如HTML表单元素)一起发回。PHP使用Setcookie()
方法存储cookie。Cookies在$_COOKIE数组中读取。以下是一个简单的例子
示例
<?php if (isset($_COOKIE['name']) && isset($_COOKIE['age'])) { echo "Name:" .$_COOKIE['name'] . " age:" .$_COOKIE['age']; } setcookie('name', 'XYZ'); setcookie('age', 20); ?>
第一次从浏览器调用上述脚本时,将设置cookie名称和年龄。随后,它们以$_COOKIE数组传输到服务器,并显示为
输出结果
Name:XYZ age:20