PHP入门到精通(第一章(第二节))

2022-10-11 21:38:40 150 0
魁首哥

今天我们来学入门教程的第二节,如果你喜欢的话可以收藏加关注哦!!!!!!

声明和使用常量

  • 概述:常量可以理解为值不变的量。常量值被定义后,在脚本的其他任何地方都不能改变。

    PHP入门到精通(第一章(第二节))

  • 常量的组成规则:一个常量由英文字母、下划线和数字组成,但数字不能作为首字母出现。

  • 在PHP中使用 define ()函数来定义常量,该函数的语法格式为:

  • define(string constant_name,mixed value,case_sensitive=true)

参数 说明
constant_name 必选参数,常量名称,即标识符
value 必选参数,常量的值
case_sensitive 可选参数,指定是否大小写敏感,设定为true
  • 获取常量的值有两种方法:一种是使用常量名直接获取值;另一种是使用constant()函数,constant()函数和直接使用常量名输出的效果是一样的,但函数可以动态地输出不同的常量,在使用上要灵活方便得多。

    函数的语法格式为:

    mixed constant(string const_name)

    参数const_name为要获取常量的名称,也可为存储常量名的变量。如果成功则返回常量的值,否则提示错误信息常量没有被定义。

  • 使用defined()函数,来判断一个常量是否已经定义。

    该函数的语法格式如下:

    bool defined(string constant_name);

    参数constant_name为要获取常量的名称,成功则返回true,否则返回false

预定义常量

  • 例3.9】 在实例中使用上述的3个函数:define()函数、constant()函数和defined()函数。使用define()函数来定义一个常量,使用constant()函数来动态获取常量的值,使用defined()函数来判断常量是否被定义。

PHP中可以使用预定义常量获取PHP中的信息。常用的预定义常量如下表所示。

  • 常量名 功能
    __FILE__ 默认常量,PHP程序文件名
    __LINE__ 默认常量,PHP程序行数
    PHP_VERSION 内建常量,PHP程序的版本,如3.0.8_dev
    PHP_OS 内建常量,执行PHP解析器的操作系统名称,如Windows
    TRUE 该常量是一个真值(true)
    FALSE 该常量是一个假值(false)
    NULL 一个null值
    E_ERROR 该常量指到最近的错误处
    E_WARNING 该常量指到最近的警告处
    E_PARSE 该常量指到解析语法有潜在问题处
    E_NOTICE

注意:__FILE__和__LINE__中的“__”是两条下划线,而不是一条

“_”。

说明:表中以E_开头的预定义常量,是PHP的错误调试部分。如需

详细了解,请参考error_ reporting()函数。

【例3.10】 预定义常量与用户自定义常量在使用上没什么差别。下

面使用预定义常量输出PHP中的信息。

变量的概念

变量是指在程序执行过程中数值可以变化的量。变量通过一个名字(变量名)来标识。系统为程序中的每一个变量

分配一个存储单元,变量名实质上就是计算机内存单元的命名。因此,借助变量名即可访问内存中的数据。

变量的声明及使用

变量的声明问题:和很多语言不同,在PHP中使用变量之前不需要声明

变量(PHP 4之前需要声明变量),只需为变量赋值即可。

变量名的要求:PHP中的变量名称用$和标识符表示,变量名是区分大

小写的。

变量的赋值:变量赋值,是指给变量一个具体的数据值,对于字符串和

数字类型的变量,可以通过“=”来实现。格式为:

对变量赋值时,要遵循变量命名规则:

  • 合法的变量命名

$thisCup=”oink”;

$_Class=”roof “;

?>

  • 非法的变量命名

$11112_var=11112; //变量名不能以数字字符开头

$@spcn = “spcn”; //变量名不能以其他字符开头

?>

除了直接赋值外,还有两种方式可为变量声明或赋值:

变量间的赋值

【例3.11】 变量间的赋值是指赋值后两个变量使用各自的内存,互不干扰。

引用赋值。从PHP 4开始,PHP引入了“引用赋值”的概念。引用的概念是,

用不同的名字访问同一个变量内容。当改变其中一个变量的值时,另一个也跟着

发生变化。使用&符号来表示引用。

【例3.12】 在本例中,变量$j是变量$i的引用,当给变量$i赋值后,$j的值也

会跟着发生变化。

注意:引用和复制的区别在于:复制是将原变量内容复制下来,开辟一个新的内

存空间来保存,而引用则是给变量的内容再起一个名字。可以这样理解,一些文

学爱好者经常会向报纸、杂志投稿件,但一般不会用真名,而是笔名,这个笔名

就可以看作是一个引用

变量 作用域

概述:变量在使用时,要符合变量的定义规则。变量必须在有效范围

内使用,如果变量超出有效范围,则变量也就失去其意义了。变量的

作用域如下表所示。

作 用 域 说 明
局部变量 在函数的内部定义的变量,其作用域是所在函数
全局变量 被定义在所有函数以外的变量,其作用域是整个PHP文件,但在用户自定义函数内部是不可用的。如果希望在用户自定义函数内部使用全局变量,则要使用global关键字声明
静态变量 能够在函数调用结束后仍保留变量值,当再次回到其作用域时,又可以继续使用原来的值。而一般变量是在函数调用结束后,其存储的数据值将被清除,所占的内存空间被释放。使用静态变量时,先要用关键字

变量作用域说明:在函数内部定义的变量,其作用域为所在

函数,如果在函数外赋值,将被认为是完全不同的另一个变量。

在退出声明变量的函数时,该变量及相应的值就会被清除。

【例3.13】 本实例用于比较在函数内赋值的变量(局部变量)

和在函数外赋值的变量(全局变量)

静态变量的应用:在博客中使用静态变量记录浏览者的人数

,每一次用户访问和离开时,都能够保留目前浏览者的人数。在

聊天室中也可以用静态变量来记录用户的聊天内容。

【例3.14】 下面使用静态变量和普通变量同时输出一个数据,

查看一下两者的功能有什么不同。

全局变量的说明:全局变量可以在程序中的任何地方访问,

但是在用户自定义函数内部是不可用的。想在用户自定义函数内

部使用全局变量,要使用global关键字声明。

【例3.15】 下面在自定义函数中应用全局变量与不应用全局变

量进行对比。本例中定义两个全局变量$zy和$zyy,在用户自定

义函数lxt()中,希望在第5、7行调用它们,而程序输出的结果

只有$zyy的值“会看到”,因为在第6行用global关键字声明了全

局变量$zyy。而第5行不会有任何输出,其中的$zy和第2行的

$zy没有任何关系。

可变变量

可变变量概念:可变变量是一种独特的变量,它允许动态改变一

个变量名称。

可变变量的工作原理:该变量的名称由另外一个变量的值来确定

,实现过程就是在变量的前面再多加一个美元符号“$”。

【例3.16】 下面使用可变变量动态改变变量的名称。

实现步骤:

首先定义两个变量$change_name和$trans,并且输出变量

$change_name的值。

然后使用可变变量来改变变量$change_name的名称。

最后输出改变名称后的变量值。

PHP预定义变量

PHP还提供了很多非常实用的预定义变量,通过这些预定义

变量可以获取到用户会话、用户操作系统的环境和本地操作系统

的环境等信息。常用的预定义变量如下表所示。

变量的名称 说明
$_SERVER[‘SERVER_ADDR’] 当前运行脚本所在的服务器的IP地址
$_SERVER[‘SERVER_NAME’] 当前运行脚本所在服务器主机的名称。如果该脚本运行在一个虚拟主机上,则该名称是由虚拟主机所设置的值决定
$_SERVER[‘REQUEST_METHOD’] 访问页面时的请求方法。如GET、HEAD、POST、PUT等,如果请求的方式是HEAD,PHP

常用的预定义变量

变量的名称 说明
$_SERVER[‘REMOTE_ADDR’] 正在浏览当前页面用户的IP地址
$_SERVER[‘REMOTE_HOST’] 正在浏览当前页面用户的主机名。反向域名解析基于该用户的REMOTE_ADDR
$_SERVER[‘REMOTE_PORT’] 用户连接到服务器时所使用的端口
$_SERVER[‘SCRIPT_FILENAME’] 当前执行脚本的绝对路径名。注意:如果脚本在CLI中被执行,作为相对路径,如file.php或者…/file.php,$_SERVER[‘SCRIPT_FILE
变量的名称 说明
$_SERVER[‘SERVER_PORT’] 服务器所使用的端口,默认为80。如果使用SSL安全连接,则这个值为用户设置的HTTP端口
$_SERVER[‘SERVER_SIGNATURE’] 包含服务器版本和虚拟主机名的字符串
$_SERVER[‘DOCUMENT_ROOT’] 当前运行脚本所在的文档根目录。在服务器配置文件中定义
$_COOKIE 通过HTTPCookie传递到脚本的信息。这些cookie多数是由执行PHP脚本时通过setcookie
变量的名称 说明
$_SESSION 包含与所有会话变量有关的信息。$_SESSION变量主要应用于会话控制和页面之间值的传递
$_POST 包含通过POST方法传递的参数的相关信息。主要用于获取通过POST方法提交的数据
$_GET 包含通过GET方法传递的参数的相关信息。主要用于获取通过GET方法提交的数据
$GLOBALS

要加关注哦!!!!!!!!

收藏
分享
海报
0 条评论
150
上一篇:PHP的安全性问题,想了解一下吧 下一篇:CTF攻略:第七届swpu-ctf官方Writeup

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码