普通常量_魔术常量_后期绑定/延迟绑定
来源:互联网 发布:沙盘sandboxie软件 编辑:程序博客网 时间:2024/05/21 09:09
普通常量
define('常量名',常量值);
以前说过: define定义的常量 ,全局有效.无论是页面内,函数内,类内,都可以访问.
能否定义 专门在类内发挥作用的常量?
专门在类内发挥作用 说明:
- 作用域在类内,类似于静态属性
- 又是常量,则不可改.
【其实就是"不可改变的静态属性"】
类常量 在类内用 const 声明即可,前面不用加修饰符,而且权限是public的,即外部也可以访问
define('ACC','Deny'); class Human { const HEAD = 1; public static $leg = 2; public static function show() { echo ACC,'<br />'; echo self::HEAD,'<br />'; echo self::$leg,'<br />'; } } Human::show(); echo Human::HEAD;
魔术常量:
- 无法手动修改他的值,所以叫常量
- 但是值又是随环境变动的,所以叫魔术
魔术常量:
__FILE__ 返回当前文件的路径.
在框架开发或者是网站初始化脚本中,用来计算网站的根目录
__LINE__ 返回当前的行号
在框架中,可以用来在debug时,记录错误信息
__CLASS__ 返回当前的类名
__METHOD__ 返回当前的方法名
header("Content-type: text/html; charset=utf-8"); echo '当前正在运行的是',__FILE__,'文件','<br />'; echo '当前在',__DIR__,'目录下<br />'; echo 'hi,我在',__LINE__,'行<br />';echo 'hello,我在',__LINE__,'行<br />';echo 'hehe,我在',__LINE__,'行<br />'; class Human { public static function t() { echo '你正在运行',__CLASS__,'类<br />'; echo '下的',__METHOD__,'方法'; }} Human::t();
后期绑定/延迟绑定
header("Content-type: text/html; charset=utf-8"); class Human { public static function whoami() { echo '来自父类的whoami在执行<br />'; } public static function say() { self::whoami(); // 子类内没有say方法,找到了父类这里 // 在这里的self 指的是 父类 } public static function say2() { static::whoami(); // 子类也没有say2方法,又找到父类这里 // 但是父类用static::whoami, // 指调用你子类自己的whoami方法 }} class Stu extends Human{ public static function whoami () { echo '来自子类的whoami在执行<br />'; } } Stu::say(); Stu::say2();
1 0
- 普通常量_魔术常量_后期绑定/延迟绑定
- PHP面向对象_魔术常量、魔术方法和预定义常量总结
- php之static后期绑定/延迟绑定
- php面向对象笔记7 类常量与延迟绑定
- 名字常量_字面值常量_常量
- ruby入门_常量
- c++_常量存储
- C++_枚举常量
- 魔术方法,延迟绑定及静态成员
- 74-魔术函数与延迟绑定
- 后期绑定
- 后期绑定
- 绑定,前期绑定,后期绑定
- 07_数据绑定
- 前端_双向绑定
- 关键字_标识符_常量_变量_数据类型
- 黑马程序员_常量池
- PHP初学_变量常量
- Spark-Sql源码解析之三 Analyzer:Unresolved logical plan –> analyzed logical plan
- Python模块(第三方module)安
- 关于Geoserver 环境搭建问题
- HDU1033——Edge(实实在在的水题)
- C语言班主任管家系统
- 普通常量_魔术常量_后期绑定/延迟绑定
- IndentationError: expected an indented block
- 浅剖智能指针----auto_ptr
- Unix常用命令
- 1265 四点共面(向量求解)
- ubutu 将svn上的文件同步到自己的文件夹下面
- CintaNotes笔记软件V3.1.1中文正式版
- UVa 1583 Dighter Generator(生成元)
- ubifs作rootfs