一、超全局变量:PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。
以下这些就是
PHP里:
全局作用域:在函数外部定义的变量,就称为"全局变量”, 全局变量不能在函数内使用。
局部作用域:在函数内部定义的变量,就称为“局部变量”,局部变量不能在函数外使用。
超全局作用域:没有使用的限制。
第一个:$_GET
说明:就是接收表单或者超链接发送来的数据.
语法:$_GET[‘参数名称’]
示例
代码1_get.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>GET提交</title>
</head>
<body>
<form action="./1_get.php" method="get">
<p>姓名: <input type="text" name="name" /></p>
<p>年龄: <input type="text" name="age" /></p>
<input type="submit" value="提交" />
</form>
</body>
</html>
代码1_get.php
<?php
header("Content-type:text/html; charset=utf-8");
$name = $_GET['name'];
$age = $_GET['age'];
echo "您好!".$name;
echo "<br />";
if($age >= 18){
echo "你已经是成年人了!可以做该做的事了!";
}else{
echo "你还没成年,你当前的年龄为:{$age}";
}
?>
结果
当不知道有什么参数的时候可以利用var_dump($_GET);来打印全部的数据
超连接方式
第二个:$_POST
说明:接收表单用POST方式提交的数据
语法:$_POST[‘参数名称’]
示例
代码2_post.html
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>POST提交</title>
</head>
<body>
<form action="./2_post.php" method="post">
<p>用户名: <input type="text" name="name" /></p>
<p>密码: <input type="password" name="pwd"></p>
<input type="submit" value="提交" />
</form>
</body>
</html>
代码2_post.php
<?php
header("Content-type:text/html; charset=utf-8");
//假设计一个账号和密码
$username = "admin";
$pass = "123456";
#接收用户提交过来的用户名和密码
$name = $_POST['name'];
$pwd = $_POST['pwd'];
if($name == "" || $pwd == ""){
echo "用户名或密码不能为空!";
exit; //退出程序
}
//判断用户名是否正确
if($name!= $username){
echo "用户名或密码错误!";
exit;
}else{
if($pwd!=$pass){
echo "用户名或密码错误!";
exit;
}else{
echo "登陆成功!";
}
}
?>
结果
第三个$_SESSION
$_get和post可以用来接收数据,进行登陆判断的相关操作,但是当我们登陆成功后再访问网站的其它页面就没有办法进行判断用户是否已经登陆了, 这个时候就可以利用session进行存储数据了,其它页面则可以通过判断 session中存储的数据来判断是否真的登陆了,session可以跨页现来使用数据。
示例
代码3_session.html(前端页面)
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>POST提交</title>
</head>
<body>
<form action="./3_session.php" method="post">
<p>用户名: <input type="text" name="name" /></p>
<p>密码: <input type="password" name="pwd"></p>
<input type="submit" value="提交" />
</form>
</body>
</html>
接收用户提交的数据3_session.php(后端页面)
<?php
header("Content-type:text/html; charset=utf-8");
//假设计一个账号和密码
$username = "admin";
$pass = "123456";
#接收用户提交过来的用户名和密码
$name = $_POST['name'];
$pwd = $_POST['pwd'];
if($name == $username && $pwd == $pass){
echo "登陆成功!";
session_start(); //开启session功能
$_SESSION['name'] = $name; //将用户存入到$_SESSION中
}else{
echo "登陆失败!";
exit;
}
?>
然后在其它页面进行访问这个$_SESSION[‘name’]
<?php
header("Content-type:text/html; charset=utf-8");
session_start(); //开启session功能
var_dump($_SESSION); //打印$_SESSION
echo "<br />你好!".$_SESSION['name'];
?>
结果