来自外部源的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'导致使用HTTP GET方法请求URL in action属性。表单中的数据填充在$_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