您当前的位置:首页 > 互联网教程

PHP定义空变量的意义

发布时间:2025-05-22 14:20:20    发布人:远客网络

PHP定义空变量的意义

一、PHP定义空变量的意义

变量用于存储值,比如数字、文本字符串或数组。

一旦设置了某个变量,我们就可以在脚本中重复地使用它。

PHP中的所有变量都是以$符号开始的。

在 PHP中设置变量的正确方法是:

$var_name= value;PHP的入门者往往会忘记在变量的前面的$符号。如果那样做的话,变量将是无效的。

让我们试着创建一个存有字符串的变量,和一个存有数值的变量:

如果对于变量和常量的定义,你会注意几个方面呢?你可能会想到:

如何定义变量,它和C#等语言有什么不同呢?

1.如何定义变量,它和C#等语言有什么不同呢?

PHP中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。例如:

echo"$var,$VAR";//输出“Jim,Kimi"

?>你可能还关心变量的命名,其实和大多数语言一样。

注意,需要说明的一点是自PHP4以来,引入了引用赋值的概念,其实和多数语言的引用类似,不过我觉得最类似的是C/C++.因为它也用到了"&"符号。例如: 1<?php

2$foo='Bob';//赋值'Bob'给foo

3$bar=&$foo;//通过$bar引用.注意&符号

4$bar="My name is$bar";//修改$bar

7?>和其他语言一样,只能对有变量名的变量才可以引用。

预定义变量在PHP是一个重要的概念。 PHP提供了大量的预定义变量。由于许多这些变量依赖于运行的服务器的版本和设置,及其它因素,所以并没有详细的说明文档。一些预定义变量在 PHP以命令行形式运行时并不生效。

需要注意的是在PHP 4.2.0以及后续版本中,PHP指令 register_globals的默认值为 off。这是 PHP的一个主要变化。让 register_globals的值为 off将影响到预定义变量集在全局范围内的有效性。例如,为了得到 DOCUMENT_ROOT的值,将必须使用$_SERVER['DOCUMENT_ROOT']代替$DOCUMENT_ROOT,又如,使用$_GET['id']来代替$id从 URL 中获取 id值,亦或使用$_ENV['HOME']来代替$HOME获取环境变量 HOME的值。

从 PHP 4.1.0开始,PHP提供了一套附加的预定数组,这些数组变量包含了来自 web服务器(如果可用),运行环境,和用户输入的数据。这些数组非常特别,它们在全局范围内自动生效,例如,在任何范围内自动生效。因此通常被称为自动全局变量(autoglobals)或者超全局变量(superglobals)。(PHP中没有用户自定义超全局变量的机制。)超全局变量罗列于下文中;而且,你也将注意到旧的预定义数组($HTTP_*_VARS)仍旧存在。自 PHP 5.0.0起,长格式的 PHP预定义变量可以通过设置 register_long_arrays来屏蔽。

$GLOBALS包含一个引用指向每个当前脚本的全局范围内有效的变量。该数组的键名为全局变量的名称。从 PHP 3开始存在$GLOBALS数组。

$_SERVER变量由 web服务器设定或者直接与当前脚本的执行环境相关联。类似于旧数组$HTTP_SERVER_VARS数组(依然有效,但反对使用)。

$_GET经由 URL请求提交至脚本的变量。类似于旧数组$HTTP_GET_VARS数组(依然有效,但反对使用)。

$_POST经由 HTTP POST方法提交至脚本的变量。类似于旧数组$HTTP_POST_VARS数组(依然有效,但反对使用)。

$_COOKIE经由 HTTP Cookies方法提交至脚本的变量。类似于旧数组$HTTP_COOKIE_VARS数组(依然有效,但反对使用)。

$_FILES经由 HTTP POST文件上传而提交至脚本的变量。类似于旧数组$HTTP_POST_FILES数组(依然有效,但反对使用)

$_ENV执行环境提交至脚本的变量。类似于旧数组$HTTP_ENV_VARS数组(依然有效,但反对使用)。

$_REQUEST经由 GET,POST和 COOKIE机制提交至脚本的变量,因此该数组并不值得信任。所有包含在该数组中的变量的存在与否以及变量的顺序均按照 php.ini中的 variables_order配置指示来定义。此数组在 PHP 4.1.0之前没有直接对应的版本。参见 import_request_variables()。

$_SESSION当前注册给脚本会话的变量。类似于旧数组$HTTP_SESSION_VARS数组(依然有效,但反对使用)

每个变量都有应用范围,那么PHP是怎么定义的呢?还是先看看下面代码吧:

6 echo"The".$index." number is".$var."<br>";

10?>你认为以上的代码会显示什么结果呢?

The 2 number is 2不好意思,你的结果是错误的。

The 2 number is 1那么你从其中发现了什么呢?我们可以知道虽然第2行的代码定义在外面,但第5行的变量和它是不一样的。第5行的变量仅在这个函数里使用。进一步的,如果我想调用第一行的变量而显示结果2.代码可以如下:

7 echo"The".$index." number is".$var."<br>";

11?>这个代码段和上面的代码段有何区别呢?注意第5行,多了一个global关键字。明白了吧。

那么还有没有其他方法呢?答案是肯定的。

6$GLOBALS["var"]=$GLOBALS["var"]+1;

7 echo"The".$index." number is".$GLOBALS["var"]."<br>";

11?>代码有什么特殊的吗?那就是用到了$GLOBALS这个超全局变量。

PHP也有静态变量的说法。不过静态变量一般用在函数里,只能是局部变量了。看看下面代码吧:

PHP还有一个相当令人兴奋的特性:可变变量

所谓可变变量,就是一个变量的变量名可以动态的设置和使用。

5?>输出的结果居然是hello,world.太神奇了。$$a其实就是$hello,因为$a的值是hello。

PHP的常量是不是前面加const呢?让我们看一看。

不是的。在PHP必须用下面的方式定义。

bool define( string name, mixed value [, bool case_insensitive])

name为常量名,value为常量的值。case_insensitive]为大小写敏感。默认为敏感。例如:

2 define("CONSTANT","Hello world.");

3 echo CONSTANT;// outputs"Hello world."

4 echo Constant;// outputs"Constant" and issues a notice.

6 define("GREETING","Hello you.", true);

7 echo GREETING;// outputs"Hello you."

8 echo Greeting;// outputs"Hello you."

常量只能用 define()函数定义,而不能通过赋值语句;

常量可以不用理会变量范围的规则而在任何地方定义和访问;

常量一旦定义就不能被重新定义或者取消定义;

?>PHP是一门松散类型的语言(Loosely Typed Language)

在 PHP中,不需要在设置变量之前声明该变量。

在上面的例子中,您看到了,不必向 PHP声明该变量的数据类型。

根据变量被设置的方式,PHP会自动地把变量转换为正确的数据类型。

在强类型的编程语言中,您必须在使用前声明变量的类型和名称。

在 PHP中,变量会在使用时被自动声明。

two=&$one;//相当于传地址,两个变量指向一个地址

echo$three."<br>";//输出"two"

echo$$three."<br>";//输出"one"

echo$$$three."<br>";//输出"######"

//2种特殊类型:资源类型 resource

//1.单引号和双引号都可以声明字符串

//3.在双引号的字符串中,既可以直接解析变量,又可以直接使用转义字符(可以转义单引号本身,也可以转义转义字符"")

//4.在单引号的字符串中,不可以直接解析变量,也不可以使用转义字符

//5.在双引号中不能再使用双引号,在单引号中不能再使用单引号

//定界符声明字符串,大量字符串

//test是自定义的一个字符串,后面不能有任何字符,空格也不可以

//也要以test这个自定义的字符串结束,结束前不能有任何字符

二、在php中定义常量用户名为root密码为root

1、您好,您问的是phpStudy默认的用户名和密码都是root,那么默认的数据库名是?

2、phpStudy如何修改或重置MySQL密码, MySQL用户名和密码默认都是root。修改mysql密码:请使用『其他选项菜单』-『MySQL设置』-『设置或修改密码』。

3、这只是一个程序包,即把Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader集合打包的工具,不用你一个个折腾安装就可以立即学习PHP的环境工具,是不可以用作生产环境的,MySQL中的数据库默认的数据当然是自带的库,可以通过phpMyadmin来管理Mysql数据库,有什么库一目了然。

三、php配置环境变量(php的环境)

如何让PHP能够读取系统环境变量

一般情况下,都能实现显示phpinfo()的页面。就从能够显示该页面之后出现的问题说起。php的问题都会显示在phpinfo()页面上。首先查看自己的php.ini的路径是否正确。Q:我已经配置了php.ini文件,但重新启动服务器后为什么没有任何效果?A:这个问题主要有这几种情况。第一个原因是由于系统所读取的php.ini文件与你当时修改的php.ini文件不一致造成的1、可以通过phpinfo()的ConfigurationFile(php.ini)Path选项查看当前PHP服务器读取的是哪一个php.ini2、如果你要更改php.ini的文件存取位置,可参考php.ini的搜索顺序,如下所示:a)SAPI模块所指定的位置(Apache2中的PHPIniDir指令,CGI和CLI中的-c命令行选项,NSAPI中的php_ini参数,THTTPD中的PHP_INI_PATH环境变量)b)HKEY_LOCAL_MACHINESOFTWAREPHPIniFilePath(Windows注册表位置)c)PHPRC环境变量d)当前工作目录(对于CLI)e)web服务器目录(对于SAPI模块)或PHP所在目录(Windows下其它情况)f)Windows目录(C:windows或C:winnt),或--with-config-file-path编译时选项指定的位置3、一般做法:通过设置PHPRC环境变量,a)操作:右击我的电脑-属性-高级-环境变量b)在系统变量下新建一个“变量名为PHPRC,变量值为你的php.ini文件所地文件路径”的环境变量第二个原因是:PHP没有找到相应的扩展库1、查看PHP找到的扩展库位置:在phpinfo()的extension_dir选项可以看到2、在php.ini更改extension_dir文件第三个原因:没有完全重启IIS1、对php.ini的修改必须完全重启IIS才能起作用,而不能只是对当前站点进行重启。2、进入cmd,停止服务器:netstopiisadmin;启动服务器:netstartw3svcQ:我的PHP怎么没有办法激活MySql扩展库A:在PHP5.0以上版本,MySQL默认未启用,因此需要咱们进行手工激活。1、在PHP运行MySql,必须在php.ini中激活php_mysql.dll动态连接库,另外还需要访问MySQL客户端连接库即libmysql.dll文件2、可以通过php.ini中的extension激活php_mysql.dll动态连接库;而libmysql.dll文件必须放在Windows的系统路径PATH才能访问,可以通过把libmysql.dll复制到system32目录下,也可以在PATH环境变量中新增一个路径。3、建议做法:通过设置PATH,方便以后的php升级,在系统环境变量中的PATH后增加“libmysql.dll”所在的文件夹即可。记得通过“;”号隔开4、[案例]最近,服务器总是找不到MySql扩展库,导致程序无法运行。因此,把所有文件删除后重新配置PHP服务器。但最后在安装MySql的时候,却始终无法激活MySql扩展库。在phpinfo()中找到的信息如下:PATH:c:phpPHPRC:C:phpextension_dir:c:phpext另外,我测试了将其它的库激活,如msql、gd2、xml,在phpinfo()都可以正常显示证明PHP能找到php_mysql.dll动态连接库,而MySql的运行的另一个条件是能够讯问MySQL客户端连接库即libmysql.dll文件,看来问题就在这里了。我对C盘搜索libmysql.dll文件,发现在system32和php文件夹各有一个文件,做好备份后,我尝试删除system32的libmysql.dll文件,发现被锁死,无法删除,却可以重新命名,我随便修改了名称,再重新启动IIS,服务器运行正常。补充一点:如果ConfigurationFile(php.ini)Path显示为C:Windows就说明,php.ini文件没有读取到。另外,我发现,在用IIS整合php时,有两种方式:ISAPI与CGI模式这两种方式,我们都可以看到phpinfo页面但是使用ISAPI模式,无法读取环境变量,所以通过环境变量PHPRC设置的php.ini路径无法找到。使用CGI就可以,这样就不必把好多文件拷到系统文件下。

一般情况下,都能实现显示phpinfo()的页面。就从能够显示该页面之后出现的问题说起。php的问题都会显示在phpinfo()页面上。首先查看自己的php.ini的路径是否正确。Q:我已经配置了php.ini文件,但重新启动服务器后为什么没有任何效果?A:这个问题主要有这几种情况。第一个原因是由于系统所读取的php.ini文件与你当时修改的php.ini文件不一致造成的1、可以通过phpinfo()的ConfigurationFile(php.ini)Path选项查看当前PHP服务器读取的是哪一个php.ini2、如果你要更改php.ini的文件存取位置,可参考php.ini的搜索顺序,如下所示:a)SAPI模块所指定的位置(Apache2中的PHPIniDir指令,CGI和CLI中的-c命令行选项,NSAPI中的php_ini参数,THTTPD中的PHP_INI_PATH环境变量)b)HKEY_LOCAL_MACHINESOFTWAREPHPIniFilePath(Windows注册表位置)c)PHPRC环境变量d)当前工作目录(对于CLI)e)web服务器目录(对于SAPI模块)或PHP所在目录(Windows下其它情况)f)Windows目录(C:windows或C:winnt),或--with-config-file-path编译时选项指定的位置3、一般做法:通过设置PHPRC环境变量,a)操作:右击我的电脑-属性-高级-环境变量b)在系统变量下新建一个“变量名为PHPRC,变量值为你的php.ini文件所地文件路径”的环境变量第二个原因是:PHP没有找到相应的扩展库1、查看PHP找到的扩展库位置:在phpinfo()的extension_dir选项可以看到2、在php.ini更改extension_dir文件第三个原因:没有完全重启IIS1、对php.ini的修改必须完全重启IIS才能起作用,而不能只是对当前站点进行重启。2、进入cmd,停止服务器:netstopiisadmin;启动服务器:netstartw3svcQ:我的PHP怎么没有办法激活MySql扩展库A:在PHP5.0以上版本,MySQL默认未启用,因此需要咱们进行手工激活。1、在PHP运行MySql,必须在php.ini中激活php_mysql.dll动态连接库,另外还需要访问MySQL客户端连接库即libmysql.dll文件2、可以通过php.ini中的extension激活php_mysql.dll动态连接库;而libmysql.dll文件必须放在Windows的系统路径PATH才能访问,可以通过把libmysql.dll复制到system32目录下,也可以在PATH环境变量中新增一个路径。3、建议做法:通过设置PATH,方便以后的php升级,在系统环境变量中的PATH后增加“libmysql.dll”所在的文件夹即可。记得通过“;”号隔开4、[案例]最近,服务器总是找不到MySql扩展库,导致程序无法运行。因此,把所有文件删除后重新配置PHP服务器。但最后在安装MySql的时候,却始终无法激活MySql扩展库。在phpinfo()中找到的信息如下:PATH:c:phpPHPRC:C:phpextension_dir:c:phpext另外,我测试了将其它的库激活,如msql、gd2、xml,在phpinfo()都可以正常显示证明PHP能找到php_mysql.dll动态连接库,而MySql的运行的另一个条件是能够讯问MySQL客户端连接库即libmysql.dll文件,看来问题就在这里了。我对C盘搜索libmysql.dll文件,发现在system32和php文件夹各有一个文件,做好备份后,我尝试删除system32的libmysql.dll文件,发现被锁死,无法删除,却可以重新命名,我随便修改了名称,再重新启动IIS,服务器运行正常。补充一点:如果ConfigurationFile(php.ini)Path显示为C:Windows就说明,php.ini文件没有读取到。另外,我发现,在用IIS整合php时,有两种方式:ISAPI与CGI模式这两种方式,我们都可以看到phpinfo页面但是使用ISAPI模式,无法读取环境变量,所以通过环境变量PHPRC设置的php.ini路径无法找到。使用CGI就可以,这样就不必把好多文件拷到系统文件下。

说明:我本地装的php集成环境MAMPPRO

最近遇到一个比较奇怪的问题,在本地搭建了PHP运行环境,并且安装了相应的PHP扩展并且在测试页面中通过打印phpinfo能看到所安装的扩展是正常的,但是php-m|grepswoole没有显示swoole已经配好了php环境变量

装好了php,php一些常用的扩展后就开始配置php系统环境变量,因为我用的macbookpro所以配置命令如下

以为一切OK的我想试试swoole的性能是否真有官网说的那么厉害于是就准备了一段测试脚本

然后奇怪的是swoole的http服务并没有起来????

确定浏览器打印的phpinfo是有swoole扩展的,而且终端的php跟界面的php是同一个版本的php百思不解然后我在终端

结果很意外终端里面找不到swoole扩展!!!可是浏览器里打印有的啊而且是同一个PHP版本??奇怪了

然后在终端执行php-i这个是在终端打印phpinfo

终于找到原因了两个地方引用的php.ini不一样于是在终端引用的php.ini同样加上extension=swoole.so即可

去年年底,苹果推出了新款的M1芯片的mac,最近刚好要换电脑,考虑对比再三,还是选择了M1芯片的mac;刚拿到手以后,担心会有软件不兼容啥的,网上也推荐作为主力开发的笔记本的话,不推荐M1,但是现在已经完全配置好了开发环境,安全下车了。下面就来简单介绍下安装过程中的步骤:

注意:如果没有安装brew,需要先安装brew,使用arch-arm64brewinstall安装

首先搜索是否包含想要安装的mysql版本,如下图:

此处选择mysql@5.7这个版本,我本地已经安装完成了

安装完成后,需要添加环境变量,这样才能在任何目录下面直接打mysql访问

先查询有哪些php的版本,之前看网上说的M1,目前还不支持php7.3以下的版本,所有我安装了php7.4

等待安装完成后,可以开始部署项目了,由于我的项目是thinkphp框架开发的,而且用到了redis,所以,这边需要先安装redis依赖

安装phpredis依赖(此处使用pecl安装,网上有很多使用编译安装的方法,那种方法比较麻烦,而且需要配置的地方比较多,pecl安装的话,快捷方便)

这个安装完成后,就只需要去nginx目录下面配置项目文件就OK了。

其他的不多说,主要提一点,就是thinkphp框架,重定向那边的配置,location里面的配置需要修改下,如下图:

修改完成后,重启服务器,还要重启php-fpm,这个是关键

php服务器变量$_SERVER服务器环境变量$_ENV

PHP?$_SERVER变量

$_SERVER是一个包含诸如头信息(header)、路径(path)和脚本位置(scriptlocations)的数组。它是PHP中一个超级全局变量,我们可以在PHP程序的任何地方直接访问它。

$_SERVER包含着众多的信息,你可以尝试直接打印它:

更多情况下,我们只需要$_SERVER数组中的某些元素(数组单元)。$_SERVER数组包含的元素如下:

$_SERVER[‘PHP_SELF’]:相对于网站根目录的路径及PHP程序名称,与documentroot相关。

$_SERVER[‘HTTP_REFERER’]:链接到当前页面的前一页面的URL地址。

$_SERVER[‘SCRIPT_NAME’]:相对于网站根目录的路径及PHP程序文件名称。

$_SERVER[‘REQUEST_URI’]:访问此页面所需的URI。

$_SERVER[‘SCRIPT_FILENAME’]:当前运行PHP程序的绝对路径及文件名。

$_SERVER[‘PATH_TRANSLATED’]:当前PHP程序所在文件系统(不是文档根目录)的基本路径。

$_SERVER[‘QUERY_STRING’]:查询(query)的字符串(URL中第一个问号?之后的内容但不包括#后面的内容)。

$_SERVER[‘argv’]:传递给当前PHP程序的参数。

$_SERVER[‘argc’]:命令行模式下,包含传递给程序的命令行参数的个数。

$_SERVER[‘REQUEST_TIME’]:请求开始时的时间戳,从PHP5.1.0起有效。

$_SERVER[‘REQUEST_METHOD’]:访问页面时的请求方法,例如:“GET”、“HEAD”,“POST”或“PUT”。

$_SERVER[‘HTTP_ACCEPT’]:当前请求的Accept:头信息的内容。

$_SERVER[‘HTTP_ACCEPT_CHARSET’]:当前请求的Accept-Charset:头信息的内容。例如:“iso-8859-1,*,utf-8”。

$_SERVER[‘HTTP_ACCEPT_ENCODING’]:当前请求的Accept-Encoding:头信息的内容。例如:“gzip”。

$_SERVER[‘HTTP_ACCEPT_LANGUAGE’]:当前请求的Accept-Language:头信息的内容。例如:“zh-cn”。

$_SERVER[‘HTTP_CONNECTION’]:当前请求的Connection:头信息的内容。例如:“Keep-Alive”。

$_SERVER[‘HTTP_HOST’]:当前请求的Host:头信息的内容。

$_SERVER[‘HTTPS’]:如果PHP程序是通过HTTPS协议被访问,则被设为一个非空的值。

$_SERVER[‘PHP_AUTH_DIGEST’]:当作为Apache模块运行时,进行HTTPDigest认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP头内容(以便作进一步的认证操作)。

$_SERVER[‘PHP_AUTH_USER’]:当PHP运行在Apache或IIS(PHP5是ISAPI)模块方式下,并且正在使用HTTP认证功能,这个变量便是用户输入的用户名。

$_SERVER[‘PHP_AUTH_PW’]:当PHP运行在Apache或IIS(PHP5是ISAPI)模块方式下,并且正在使用HTTP认证功能,这个变量便是用户输入的密码。

$_SERVER[‘AUTH_TYPE’]:当PHP运行在Apache模块方式下,并且正在使用HTTP认证功能,这个变量便是认证的类型。

$_SERVER[‘DOCUMENT_ROOT’]:当前运行PHP程序所在的文档根目录,在服务器配置文件中定义。

$_SERVER[‘GATEWAY_INTERFACE’]:服务器使用的CGI规范的版本,例如:“CGI/1.1”。

$_SERVER[‘SERVER_ADDR’]:当前运行PHP程序所在的服务器的IP地址。

$_SERVER[‘SERVER_NAME’]:当前运行PHP程序所在的服务器的名称。

$_SERVER[‘SERVER_ADMIN’]:Apache服务器配置文件中的SERVER_ADMIN参数。

$_SERVER[‘SERVER_PORT’]:服务器所使用的端口。如果使用SSL安全连接,则这个值为用户设置的HTTP端口。

$_SERVER[‘SERVER_SIGNATURE’]:包含服务器版本和虚拟主机名的字符串。

$_SERVER[‘SERVER_SOFTWARE’]:服务器标识的字串,在响应请求时的头信息中给出。

$_SERVER[‘SERVER_PROTOCOL’]:请求页面时通信协议的名称和版本,例如:“HTTP/1.0”。

$_SERVER[‘HTTP_USER_AGENT’]:当前请求的User-Agent:头信息的内容,该字符串表明了访问该页面的用户代理的信息。

$_SERVER[‘REMOTE_ADDR’]:正在浏览当前页面用户的IP地址。

$_SERVER[‘REMOTE_HOST’]:正在浏览当前页面用户的主机名。

$_SERVER[‘REMOTE_PORT’]:用户连接到服务器时所使用的端口。

注意,如果以命令行方式运行PHP,上面列出的元素几乎没有有效的(或是没有任何实际意义的)。

$_ENV是一个包含服务器端环境变量的数组。它是PHP中一个超级全局变量,我们可以在PHP程序的任何地方直接访问它。

$_ENV只是被动的接受服务器端的环境变量并把它们转换为数组元素,你可以尝试直接打印它:

限于篇幅,在此不再列出打印的结果,且不同的服务器上,打印出的结果可能是完全不同的。

$_ENV数组中的元素(数组单元)随服务器环境不同而有较大差异,所以无法像?$_SERVER?那样列出完整的列表。以下是$_ENV数组包含的比较通用的元素:

$_SERVER[‘PATH’]:环境变量PATH路径。

$_SERVER[‘CLASSPATH’]:系统CLASSPATH路径。

$_SERVER[‘LIB’]:系统LIB库路径。

$_SERVER[‘INCLUDE’]:系统Include路径,注意与PHP的包含路径是不一样的。

$_SERVER[‘OS’]:操作系统类型。

$_SERVER[‘LANG’]:系统语言,如en_US或zh_CN。

$_SERVER[‘PWD’]:当前工作目录。

$_SERVER[‘TEMP’]:系统TEMP路径。

$_SERVER[‘AP_PARENT_PID’]:当前进程ID号。

$_SERVER[‘NUMBER_OF_PROCESSORS’]:系统CPU数目。

如果打印输出$_ENV为空,可以检查一下php.ini的配置:

上述配置表示PHP接受的外部变量来源及顺序,EGPCS是Environment、Get、Post、Cookies和Server的缩写。如果variables_order的配置中缺少E,则PHP无法接受环境变量,那么$_ENV也就为空了。

命令行查询,如果已经配置好环境变量,直接在命令行中输入php-v,将会显示php的版本信息。如果没有配置环境变量,直接在命令行中进入到php的安装目录后,再输入命令php-v,在安装目录下输入查询命令,可以看到输出的版本信息为PHP5.3.29。

(1)使用预定义常量PHP_VERSION查询,新建一个php文件,在里面输入?php???echoPHP_VERSION;?。

(2)在浏览器中输出对应的网址,就可以查看到php的版本信息。

(1)使用phpversion()函数查询,新建一个php文件,在文件中输入?php???echophpversion();?即可。

(2)在浏览器中访问,可以看到浏览器页面上返回的php版本信息,跟预定义常量PHP_VERSION显示效果一样。

(1)使用phpinfo()函数查询,新建一个php文件,在文件中输入?php???echophpinfo();?即可。

(2)在浏览器中访问,可以看到不仅可以看到PHP的版本信息,还能看到其它很多关于PHP的信息。