代码如下:
- <?php
- /* 预定义数组:
- * 自动全局变量---超全局数组
- *
- * 1.包含了来自WEB服务器,客户端,运行环境和用户输入的数据
- * 2.这些数组比较特别
- * 3.全局范围内自动生效,都可以直接使用这些数组
- * 4.用户不能自定义这些数组,但这些数组的操作方式和自己定义的数组操作的方式一样
- * 5.在函数中直接可以使用这些数组
- *
- * $_GET //经由URL请求提交至脚本的变量
- * $_POST //经由HTTP POST 方法提交到脚本的变量
- * $_REQUEST //经由GET , POST和COOKIE机制提交 到脚本的变量
- * $_FILES //经由http post方法文件上传而提交至脚本的变量
- * $_COOKIE
- * $_SESSION
- * $_ENV //执行环境提交至脚本的变量
- * $_SERVER //变量由WEB服务器设定的,或直接和当前脚本的执行环境相关联
- * $GLOBALS //只要是当前脚本有效的变量都在这里,数组的键名为全局脚本的名称
- *
- *
- */
- //超全局数组在函数内部可以直接调用
- $arr=array(10,20);//一般数组
- $_GET=array(50,90);//超全局数组
- function demo(){
- global $arr;//调用全局变量要先包含
- print_r($arr);
- print_r($_GET);//直接调用超全局数组不用包含
- }
- ?>
- <!-- **********页面传值get请求*************** -->
- <?php
- //直接把传的值当变量用,当php.ini配置文件中register_global=on时有用。
- echo $username."<br>";
- echo $email."<br>";
- echo $page."<br>";
- //最稳定的取值方法
- echo $_GET["username"]."<br>";
- echo $_GET["email"]."<br>";
- echo $_GET["page"]."<br>";
- ?>
- <a href="demo.php?username=zhangsan&email=aaa@bbb.com&page=45">this is a $_GET test</a>
- <!-- ***********页面传值post请求**************** -->
- <form action="demo.php" method="post">
- username:<input type="text" name="uname" /> <br/>
- password:<input type="password" name="pass" /> <br/>
- <input type="submit" value="login" /> <br />
- </form>
- <?php
- print_r($_GET);//不能接收到
- print_r($_POST);//这样才能接收到
- ?>
- <?php
- //$_ENV的使用
- echo'<pre>';
- print_r($_ENV);
- echo'</pre>';
- //显示当前环境
- // 也可以单个遍历
- ?>
- <?php
- //利用$GLOBALS超全局数组在函数内部调用全局变量
- $a=100;
- $b=200;
- $c=300;
- function demo()
- {
- //直接调用全局变量
- echo $GLOBALS["a"]."<br>";
- echo $GLOABLS["b"]."<br>";
- echo $GLOABLS["c"]."<br>";
- }
- ?>
复制代码
|