【PHP中的超全局变量解析和用法示例】我们已经在后面的PHP |变量和数据类型中讨论了PHP中的变量和全局变量。在这篇文章中,我们将学习PHP中的超全局变量。
这些是PHP中特别定义的数组变量, 可让你轻松获取有关请求或其上下文的信息。超全局变量在整个脚本中都可用。可以从任何函数, 类或任何文件访问这些变量, 而无需执行任何特殊的任务, 例如声明任何全局变量等。它们主要用于在应用程序中从一页到另一页的信息存储和获取信息。
以下是PHP中可用的超全局变量列表:
- $GLOBALS
- $_SERVER
- $_REQUEST
- $_GET
- $_POST
- $_SESSION
- $_COOKIE
- $_FILES
- $_ENV
$GLOBALS
:这是一个超全局变量, 用于从PHP脚本中的任何位置访问全局变量。 PHP将所有全局变量存储在数组$GLOBALS []中, 其中index包含可以访问的全局变量名称。
下面的程序说明了$GLOBALS在PHP中的用法:
<
?php
$x = 300;
$y = 200;
function multiplication(){
$GLOBALS [ 'z' ] = $GLOBALS [ 'x' ] * $GLOBALS [ 'y' ];
}multiplication();
echo $z ;
?>
输出:
60000
在上面的代码中, 声明了两个全局变量$x和$y给他们分配了一些价值。然后一个功能乘法()被定义为乘以$x和$y并存储在另一个变量中$z在定义全局数组.
$_SERVER
:这是一个PHP超全局变量, 用于存储有关标题, 路径和脚本位置的信息。其中一些元素用于从超全局变量$_SERVER获取信息。
下面的程序说明了$_SERVER在PHP中的用法:
<
?php
echo $_SERVER [ 'PHP_SELF' ];
echo "<
br>
" ;
echo $_SERVER [ 'SERVER_NAME' ];
echo "<
br>
" ;
echo $_SERVER [ 'HTTP_HOST' ];
echo "<
br>
" ;
echo $_SERVER [ 'HTTP_USER_AGENT' ];
echo "<
br>
" ;
echo $_SERVER [ 'SCRIPT_NAME' ];
echo "<
br>
"
?>
输出:
文章图片
在上面的代码中, 我们使用$_SERVER元素来获取一些信息。我们得到当前文件名, 可以使用" PHP_SELF"元素进行处理。然后, 我们使用" SERVER_NAME"元素获取当前使用的服务器名称。然后我们通过" HTTP_HOST"获得主机名。
$_REQUEST
:这是一个超全局变量, 用于在提交HTML表单后收集数据。 $_REQUEST很少使用, 因为$_POST和$_GET执行相同的任务并且被广泛使用。
以下是解释$_REQUEST如何工作的HTML和PHP代码:
<
!DOCTYPE html>
<
html>
<
body>
<
form method = "post" action="<
?php echo $_SERVER['PHP_SELF'];
?>
">
NAME: <
input type = "text" name = "fname">
<
button type = "submit">
SUBMIT<
/button>
<
/form>
<
? php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = htmlspecialchars ($_REQUEST['fname']);
if(empty($name)){
echo "Name is empty";
} else {
echo $name;
}
}
?>
<
/body>
<
/html>
输出:
文章图片
在上面的代码中, 我们创建了一个表单, 该表单将名称作为用户输入的名称, 并在单击"提交"按钮时将其打印出来。我们使用以下方式将表格中接受的数据传输到同一页面$_SERVER [‘PHP_SELF’]动作属性中指定的元素, 因为我们使用PHP代码在同一页面中操作数据。使用$_REQUEST超全局数组变量检索数据
$_POST:这是一个超级全局变量, 用于在提交HTML表单后收集其数据。当表单使用方法过帐来传输数据时, 该数据在查询字符串中不可见, 因为在此方法中维护了哪些安全级别。
以下是解释$_POST如何工作的HTML和PHP代码:
<
!DOCTYPE html>
<
html>
<
body>
<
form method = "post" action="<
?php echo $_SERVER['PHP_SELF'];
?>
">
<
label for = "name">
Please enter your name: <
/label>
<
input name = "name" type = "text">
<
br>
<
label for = "age">
Please enter your age: <
/label>
<
input name = "age" type = "text">
<
br>
<
input type = "submit" value = "https://www.lsbin.com/Submit">
<
button type = "submit">
SUBMIT<
/button>
<
/form>
<
? php
$nm=$_POST['name'];
$age=$_POST['age'];
echo "<
strong>
".$nm." is $age years old.<
/strong>
";
?>
<
/body>
<
/html>
输出:
文章图片
在上面的代码中, 我们创建了一个表单, 该表单使用用户的姓名和年龄, 并在提交数据时使用$_POST超级全局变量访问数据。由于每个超全局变量都是一个数组, 因此它可以存储多个值。因此, 我们从$_POST变量中检索了姓名和年龄, 并将它们存储在$nm和$age变量中。
$_GET
:$_GET是一个超级全局变量, 用于在提交HTML表单后收集数据。当表单使用get方法传输数据时, 该数据在查询字符串中可见, 因此不会隐藏这些值。 $_GET超级全局数组变量存储URL中的值。
以下是解释$_GET如何工作的HTML和PHP代码:
<
!DOCTYPE html>
<
html>
<
head>
<
title>
<
/title>
<
/head>
<
body bgcolor = "cyan">
<
? php
$name = $_GET['name'];
$city = $_GET['city'];
echo "<
h1>
This is ".$name." of ".$city."<
/h1>
<
br>
";
?>
<
img src = "https://www.lsbin.com/2.jpg" alt = "nanilake" height = "400" width = "500" />
<
/body>
<
/html>
实际上, 刚才我们看到了一半的逻辑。在上面的代码中, 我们创建了Nainital Lake的超链接图像, 它将带我们到picture.php页面, 并且还将带参数
name =" Nainilake"
和
city =" Nainital"
.
那就是当我们单击奈尼塔尔湖的小图像时, 我们将带参数进入下一页picture.php。使用默认方法get时, 这些参数将使用get方法传递到下一页, 它们将在地址栏中可见。当我们想将值传递给地址时, 它们使用问号(?)附加到该地址。
这里的参数
名称= Nainilake
附在地址上。如果我们想添加更多的值, 我们可以在每个键值对之后使用与号(& )添加它们, 类似于
城市=奈尼塔尔
在名称参数之后使用& 符号添加。现在, 在单击Nainital Lake的图像后, 我们希望显示picture.php页面, 同时显示参数值。
推荐阅读
- Kruskal的最小生成树算法|贪婪算法2
- JavaScript Math random()方法用法示例
- Perl变量用法完整指南和示例
- PHP date_create_from_format()函数用法示例解析
- OYO面试经验|S10(SDE校园内)
- PHP ftp_delete()函数用法示例和解析
- 本文教你如何激活windows764位旗舰版系统
- 一键windows732位系统重装64位图文详细教程图解
- win764位旗舰版激活工具制作详细说明