常量(Constant)听起来与变量相似,但就容易混淆。
变量的值会改变而称为变量,那相对於变量的常量,则表示是恒常不变的值,因而称作常量,常量类似於变量,但是常量一旦被定义就无法更改或撤销定义,那麽问题是在 PHP 中如何定义常量呢?
常量是一个简单值的识别符号(名字)。在指令码执行期间该值不能被修改和删除,常量可以不用理会变量范围的规则而在任何地方定义和访问。
常量预设为大小写敏感,有分别。
PHP_VERSION:PHP版本号,当前解析器的版本号。它可以告诉我们当前PHP解析器的版本号,我们可以提前知道我们的PHP代码是否可被该PHP解析器解析。
PHP_OS:执行当前PHP版本的操作系统名称。
魔术常量以双下划线开始、以双下划线结束
LINE:当前所在行数
DIR:当前文件所在路径(绝对路径)
FILE:当前文件所在路径(绝对路径,包含文件名称)
FUNCTION:函数内部使用,所处函数名,区分大小写,包含函数的名字
CLASS:类内部使用,表示类名
NAMESPACE:命名空间内部使用,表示当前所属命名空间
METHOD:类内部方法使用,表示当前方法名字
TRAIT :代码覆用的一个方法,称为traits
PHP 实现了代码复用的一个方法,称为traits。
Trait 包括其被声明的作用区域,从基类继承的成员被插入的winnie,Trait 中的Hellowinnie 方法所覆盖,与Hellowinnie 类中定义的方法一致,优先顺序是当前类中的方法会覆盖trait 方法,而trait 方法又覆盖了基类中的方法。
<?php
namespace MyProject;
echo __LINE__;
echo '<hr>';
echo __DIR__;
echo '<hr>';
echo __FILE__;
echo '<hr>';
echo __NAMESPACE__;
echo '<hr>';
// __CLASS__ __FUNCTION__ __METHOD__
class test {
function hello() {
echo '类名:' . __CLASS__ . "<br>";
echo '函数名:' . __FUNCTION__. "<br>" ;
echo '方法名:'.__METHOD__. "<br>";
}
}
$t1 = new test();
$t1->hello();
echo '<hr>';
// __TRAIT__
class Base {
public function Hello() {
echo 'Hello ';
}
}
trait winnie {
public function Hello() {
parent::Hello();
echo 'winnie!';
}
}
class Hellowinnie extends Base {
use winnie;
}
$test = new Hellowinnie();
$test->Hello();
今天介绍常量,包含语法、命名规则和魔术常量,变量的好处是可以随时根据需求改变变量所代表的数据,常量则是一开始定义并赋值後,在整个脚本中不允许改变的量,这是两个蛮大的差别唷!
今天就到这里~~ 明天见><
<<: #6-无限文字Logo跑马灯 (不用JS! CSS Animation)
range golang 的 template 支援 range 循环来遍历 map、slice 内...
先宣传一下我的新书,终於出来惹,感动到无法言语>"< 还请大家多多支持! We...
今天要先介绍JSON的写法,明天的实作会取用今天建置好的JSON档介绍Methods和Compute...
威胁是攻击者可以用来渗透组织的潜在弱点,攻击者会跨越多个网域 (例如电子邮件、身分识别、端点和应用程...
Odoo 的onchange 有些特别要注意的地方, 像是onchange会影响到的栏位都要写入XM...