ddxiami

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 3534|回复: 8

[细说PHP] 第9章PHP中的数组与数据结构--预定义数组

[复制链接]
发表于 2013-8-5 11:43:52 | 显示全部楼层 |阅读模式
服务器变量:$_SERVER。是一个包含诸如头信息、路径和脚本位置的数组,由Web服务器创建。

<?php
        //使用foreach语句遍历数组$_SERVER
        foreach( $_SERVER as $key => $value ){                     
                echo '$_SERVER['.$key.'] = '.$value.'<br>';        
        }

        //因为所有超全局数组也是数组,如果只想查看内容,直接使用print_r即可
        echo '<pre>';
        print_r( $_SERVER );
        echo '</pre>';

        //只访问$_SERVER中一个成员,获取客户端的IP地址
        echo $_SERVER['REMOTE_ADDR'];
回复

使用道具 举报

 楼主| 发表于 2013-8-5 12:05:45 | 显示全部楼层
环境变量:$_ENV。数组中的内容是在PHP解析器运行时,从PHP所在服务器中的环境变量转变成PHP全局变量的。

<?php
        foreach($_ENV as $key => $value){                        //使用foreach语句遍历数组$_ENV
                echo '$_ENV['.$key.'] = '.$value.'<br>';          //输出数组$_ENV中每个元素的下标和值
        }
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-5 13:15:06 | 显示全部楼层
URL GET 变量:$_GET
测试URL:http://localhost/test.php?action=1&user=lamp&tid=10&page=5

<?php      
        //服务器页面 index.php ,虽然特性是超全局数组,但操作方式就是普通数组的操作方式
        echo '参数为 action 为:'.$_GET["action"].'<br>';         //在$_GET中使用下标action访问输出 1
        echo '参数为 user 为:'.$_GET["user"].'<br>';           //在$_GET中使用下标user访问输出 lamp
        echo '参数为 tid 为:'.$_GET["tid"].'<br>';                    //在$_GET中使用下标tid访问输出 10
        echo '参数为 page 为:'.$_GET["page"].'<br>';                 //在$_GET中使用下标page访问输出 5
        
        //如果在调试程序时,想看看$_GET数组中的数据,可以使用print_r(),加上<pre>标记输出原格式
        echo '<pre>';
        print_r( $_GET );
        echo '</pre>';
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-5 13:19:20 | 显示全部楼层
HTTP POST 变量:$_POST

测试页面:index.html
<html>
        <head><title>添加联系人</title></head>
        <body>
                <form action="add.php" method="post">                          <!-- 将表单以POST方法提交到add.php -->
                        编号:<input type="text" name="id"><br>             <!-- 表单域的名称为id                         -->
                        姓名:<input type="text" name="name"><br>          <!-- 表单域的名称为name            -->
                        公司:<input type="text" name="company"><br> <!-- 表单域的名称为company         -->
                        地址:<input type="text" name="address"><br> <!-- 表单域的名称为address         -->
                        电话:<input type="text" name="phone"><br>         <!-- 表单域的名称为phone           -->
                        EMAIL:<input type="text" name="email"><br>         <!-- 表单域的名称为E-mail          -->
                        <input type="submit" value="添加新联系人">
                </form>
        </body>
</html>

测试页面:add.php
<?php
        /**
                文件名 add.php        该脚本用于获取和输出所有表单以post提交的数据
        */
        echo "用户添加的联系人信息如下:<br>";
        foreach( $_POST as $key => $value ) {                 //使用foreach语句遍历超全局数组$_POST
                echo $key.' : '.$value.'<br>';              //输出$_POST数组中的键和值,键即是表单域的名称
        }
?>
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-5 13:31:38 | 显示全部楼层
request变量:$_REQUEST

经由GET,POST和COOKIE机制提交至脚本的变量,因此该数组并不值得信任。此关联数组包含$_GET,$_POST和$_COOKIE中的全部内容。
$_REQUEST的速度比较慢,不推荐使用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-5 13:40:09 | 显示全部楼层
HTTP 文件上传变量:$_FILES

使用表单的file输入域上传文件时,必须使用POST提交。




回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-5 13:47:01 | 显示全部楼层
HTTP Cookies:$_COOKIE

$_COOKIE超全局数组是经由HTTP Cookies方法提交至脚本的变量。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-5 13:50:59 | 显示全部楼层
Session变量:$_SESSION

会话控制是在服务器端使用session跟踪用户。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-5 13:54:44 | 显示全部楼层
Global变量:$GLOBALS。是由所有已定义的全局变量组成的数组,变量名就是该数组的索引。

<?php
        $a = 1;                                                                                      //声明一个全局变量$a,初始值为1
        $b = 2;                                                                                 //声明一个全局变量$b, 初始值为2
       
        /**
                声明一个函数Sum(),在函数体中使用全局变量$a和$b
        */
        function Sum() {         
             $GLOBALS['b'] = $GLOBALS['a'] + $GLOBALS['b'];   //使用$_GLOBALS数组访问全局变量
        }
       
        Sum();                                                                                  //调用函数Sum()
        echo $b;                                                                                 //全局变量$b值在函数内部被改变,输出3
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|技术文档库 ( 闽ICP备15017263号-2 )|网站地图

GMT+8, 2025-5-18 18:11 , Processed in 0.036635 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表