预定义超全局变量练习演示

编程入门 行业动态 更新时间:2024-10-26 04:23:37

预定义超全局变量练习<a href=https://www.elefans.com/category/jswz/34/1769411.html style=演示"/>

预定义超全局变量练习演示

预定义超全局变量

$_GET

  • $_GET 是一个预定义数组。
  • 作用域是超全局,脚本的任何地方都可以使用。
  • 接收从浏览器客户端用户GET 方式传递到服务器的参数。
  • GET 传参的参数名做$_GET 数组的key,参数值作为数组的value。
  • GET 传参时,直接将参数拼接到URL 中即可。
<?phpvar_dump($_GET);
?>

访问该页面

随后更改url,在url后加上?username=order&password=123456

访问结果如图

传参成功

$_POST

  • $_POST 用于接收浏览器客户端用户以POST 方式传递过来的参数。
  • POST 传参,参数在请求正文中

先写一个post传参用的表单,方法设置post,并且设置目的文件

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>posthtml</title>
</head>
<body><form method="post" action="post.php">username:<input type="text" name="username">password:<input type="password" name="password"><input type="submit" name="submit"></form>
</body>
</html>

随后写一个接收post参数的php

<meta charset="UTF-8">
<?phpecho "<pre>";var_dump($_POST);
?>

在该页面输入内容

order:123456

随后观察能否传参

提交过后发现传参成功,并且url变为接受参数的php文件位置

$_COOKIE

COOKIE 技术

为了弥补HTTP 协议的无状态性,保持用户的会话状态,需要使用Cookie 技术。

Cookie 过程:

  • 用户提交账密
  • 服务器进行身份认证
  • 下发身份证,下发Cookie。
  • 浏览器客户端用户所有的请求都会携带身份信息,携带Cookie 信息。
  • 整体流程体现为,保持了HTTP 会话的状态性。

先写一个测试用的cookie.php

<meta charset="UTF-8">
<?phpecho "<pre>";var_dump($_COOKIE);
?>

访问时没有参数

控制台写入两条cookie

写入后刷新页面即可看到传递的参数

$_REQUEST

$_REQUEST,默认包含了$_GET$_POST$_COOKIE 数组中的所有变量。以上提到的三个数组,包含了浏览器客户端的三大传参方式,也称GPC。

但是$_REQUEST 数组在接收参数的时候,会受到一个PHP 选项的控制。

首先需要编辑此处配置文件

/php/php-5.4.45/php.ini
request_order = "GP"
变为
request_order = "GPC"

重启phpstudy

写一个request的php

<meta charset="UTF-8">
<?phpecho "<pre>";var_dump($_REQUEST);
?>

本来无参数,并且刚刚开启了接受cookie传参

使用cookie的传参方式看看能不能接到

刷新页面后成功接收到参数

$GLOBALS

<meta charset="UTF-8">
<?phpecho "<pre>";var_dump($GLOBALS);
?>

$_ENV

<meta charset="UTF-8">
<?phpecho "<pre>";var_dump($_ENV);
?>

更换php版本

$_FILE

先写一份上传文件用的表单

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><form action="file.php" method="post" enctype="multipart/form-data"><input type="file" name="file"><input type="submit" name="submit"></form>
</body>
</html>

然后写一份文件上传的php

<meta charset="UTF-8">
<?phpecho "<pre>";var_dump($_FILES);
?>

访问页面

选择图片上传后

但是此处它传到临时文件了,并且很快自动删除,相当于最后服务器仍然没有该文件

需要修改一下,让它能保存到

修改php文件

<meta charset="UTF-8">
<?phpecho "<pre>";$tmp_path=$_FILES['file']['tmp_name'];$target_path="./png/".$_FILES['file']['name'];// echo $target_path;// echo $tmp_path;$flag=move_uploaded_file($tmp_path,$target_path);if($flag){echo "upload to {$target_path} successfully<br>";}else{echo "failed<br>";}
?>

随后上传图片

成功显示加入的显示信息以及成功上传图片到指定位置

可以正常打开

更多推荐

预定义超全局变量练习演示

本文发布于:2023-12-03 13:50:18,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1656056.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:演示   全局变量

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!