魔术常量是php向它运转的任何剧本提供了年夜量的预约义常量。不外不少常量都是由没有同的扩大库界说的,只有正在加载了这些扩大库时才会呈现,或许静态加载后,或许正在编译时曾经包罗出来了。上面咱们就为各人具体引见一下php各个魔术常量的用法。
保举教程:PHP视频教程
__LINE__
文件中确当前行号。
<?php echo '这是第 " ' . __LINE__ . ' " 行'; ?>
以上实例输入后果为:
这是第 “ 2 ” 行
__FILE__
文件的完好门路以及文件名。假如用正在被蕴含文件中,则前往被蕴含的文件名。
自 PHP 4.0.2 起,__FILE__ 老是蕴含一个相对门路(假如是符号衔接,则是解析后的相对门路),而正在此以前的版本有时会蕴含一个绝对门路。
<?php echo '该文件位于 " ' . __FILE__ . ' " '; ?>
以上实例输入后果为:
该文件位于 “ E:\wamp\www\test\index.php ”
__DIR__
文件所正在的目次。假如用正在被包罗文件中,则前往被包罗的文件所正在的目次。
它等价于 dirname(__FILE__)。除了非是根目次,不然目次中名没有包罗末尾的斜杠。(PHP 5.3.0中新增)
<?php echo '该文件位于 " ' . __DIR__ . ' " '; ?>
以上实例输入后果为:
该文件位于 “ E:\wamp\www\test ”
__FUNCTION__
函数称号(PHP 4.3.0 新加)。自 PHP 5 起本常量前往该函数被界说时的名字(区别巨细写)。正在 PHP 4 中该值老是小写字母的。
<?php function test() { echo '函数名为:' . __FUNCTION__ ;}test(); ?>
以上实例输入后果为:
函数名为:test
__CLASS__
类的称号(PHP 4.3.0 新加)。自 PHP 5 起本常量前往该类被界说时的名字(区别巨细写)。
正在 PHP 4 中该值老是小写字母的。类名包罗其被申明的作用区域(例如 Foo\Bar)。留意自 PHP 5.4 起 __CLASS__ 对 trait 也起作用。当用正在 trait 办法中时,__CLASS__ 是挪用 trait 办法的类的名字。
<?php class test { function _print() { echo '类名为:' . __CLASS__ . "<br>"; echo '函数名为:' . __FUNCTION__ ; } } $t = new test(); $t->_print(); ?>
以上实例输入后果为:
类名为:test 函数名为:_print
__TRAIT__
Trait 的名字(PHP 5.4.0 新加)。自 PHP 5.4.0 起,PHP 完成了代码复用的一个办法,称为 traits。
Trait 名包罗其被申明的作用区域(例如 Foo\Bar)。
从基类承继的成员被拔出的 SayWorld Trait 中的 MyHelloWorld 办法所笼罩。其行为 MyHelloWorld 类中界说的办法分歧。优先程序是以后类中的办法会笼罩 trait 办法,而 trait 办法又笼罩了基类中的办法。
<?php class Base { public function sayHello() { echo 'Hello '; } } trait SayWorld { public function sayHello() { parent::sayHello(); echo 'World!'; } } class MyHelloWorld extends Base { use SayWorld; } $o = new MyHelloWorld(); $o->sayHello(); ?>
以上例程会输入:
Hello World!
__METHOD__
类的办法名(PHP 5.0.0 新加)。前往该办法被界说时的名字(区别巨细写)。
<?php function test() { echo '函数名为:' . __METHOD__ ; } test(); ?>
以上实例输入后果为:
函数名为:test
__NAMESPACE__
以后定名空间的称号(区别巨细写)。此常量是正在编译时界说的(PHP 5.3.0 新增)。
<?php namespace MyProject; echo '定名空间为:"', __NAMESPACE__, '"'; ?>
以上实例输入后果为:
定名空间为:"MyProject"
以上就是php魔术常量应用办法的具体内容,更多请存眷资源魔其它相干文章!
标签: php php开发教程 php开发资料 php开发自学 魔术常量