首页 > 作文

PHP 预定义变量、魔术常量和魔术方法功能与用法小结

更新时间:2023-04-08 14:17:29 阅读: 评论:0

本文总结了php 预定义变量、魔术常量和魔术方法。分享给大家供大家参考,具体如下:

php 预定义了一些变量、常量、方法,使用起来很方便,例如直接使用__dir__ 获取当前文件所在的目录。

下面分别详细介绍一下 php 的预定义变量、魔术常量和魔术方法

预定义变量

超全局变量:

超全局变量是在全部作用域中始终可用的内置变量,意味这你可以在 php 脚本的任意位置直接访问。在函数或方法中无需执行global $variable;就可以访问它们。

超全局变量是从 php 4.1.0 开始才有的功能。

php 的超级全局变量有:

$globals,引用全局作用域中可用的全部变量

$_rver,服务器和执行环境信息

$_get,http get 变量

$_post,http post骁龙820 变量

$_files,http 文件上传变量

$_cookie,http cookies

$_ssion,ssion 变量

$_request,http request 变量

$_env,环境变量

其他:

$php_errormsg,前一个错误信息

$http_raw_post_data,原生 post 数据,一般会使用php://input代替$http_raw_post_data

$http_respon_header,http 响应头

$argc,传递给脚本的参数数目

$argv,传递给脚本的参数数组

魔术常量

php 有八个魔术常量,它们的值随着它们在代码中的位置改变而改变。例如__line__的值就依赖于它在脚本中所处的行来决定。这些特殊的常民间传说量(魔术常量)不区分大小写,如下:

__line__,文件中的当前行号

__file__,文件的完整路径和文件名,如果用在被包含的文件中,则返回被包含的文件名

__dir__,文件所在的目录,如果用在被包括文件中,则返回被包括的文件所在的目录。等价与 dirname(__file__)

__function__,函数的名称

__class__,类的名称

__trait__,trait 的名字

__method__,类的方法名

__namespace__,当前命名空间的名称

魔术方法

magic methods php 的魔术方法,在命名自定义的类方法时不能使用这些方法名,因为 php 已经规定好了这些方法是有特定的功能,例如 __construct() 是构造方法。

php 将所有以 __(两个下划线)开头的类方法保留为魔术方法。所以在定义类方法时,除了魔术方法,建议不要以 __ 为前缀。

__constr新的学期新的开始uct(),构造函数

__destruct(),析构函数

__call(),在对象中调用一个不可访问的方法时,__call() 会被调用

__callstatic(),在对象中调用一个不可访问的静态方法时,__call() 会被调用

__烟花璀璨打一生肖教师资格证证书get(),当读取不可访问的属性值时,__t() 会被调用

__t(),当给不可访问的属性赋值时,__t() 会被调用

__ist(),当对不可访问属性调用 ist() 或 empty() 是,__ist() 会被调用

__unt(),当对不可访问属性调用 unt() 时,__unt() 会被调用

__sleep(),rialize() 函数会检查类中是否存在魔术方法 __sleep(),如果存在,会先调用 __sleep(),然后才执行序列化操作。这样就允许对象在被序列化之前做任何清除操作。

__wakeup(),当使用 unrialize()恢复对象时, 将调用__wakeup()成员函数。

__tostring(),当一个对象被当作字符串输出时,会调用 __tostring() 输出的内容,例如 echo $obj;

__invoke(),当以调用函数的方式调用一个对象时,__invoke() 方法会被自动调用,本特性只在 php 5.3.0 及以上版本有效。

__t_state(),当调用 var_export() 导出对象时,此方法会被调用

__clone(),对象复制,当使用 clone 关键字复制对象时,会调用 __clone(),__clone() 不能被直接调用,使用 clone 复制的对象为浅复制,所以引用属性仍然会是一个指向原来的变量的引用。

__debuginfo(),当调用 var_dump() 导出对象时,此方法会被调用

__autoload($class_name),加载未定义的类

官方文档:

本文发布于:2023-04-08 14:17:27,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/d8c5e82865ac09ef4c3c451314eba6f3.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:PHP 预定义变量、魔术常量和魔术方法功能与用法小结.doc

本文 PDF 下载地址:PHP 预定义变量、魔术常量和魔术方法功能与用法小结.pdf

下一篇:返回列表
标签:变量   方法   魔术   常量
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图