PHP中魔术变量__METHOD__与__FUNCTION__的区别
本文实例讲述了PHP中魔术变量__METHOD__与__FUNCTION__的区别,分享给大家供大家参考。具体分析如下:
__METHOD__类的方法名(PHP 5.0.0 新加)。返回该方法被定义时的名字(区分大小写)。
__FUNCTION__函数名称(PHP 4.3.0 新加)。自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写)。在 PHP 4 中该值总是小写字母的。
文档解释都是说返回函数(方法)的名字。区别在于:
__FUNCTION__只是返回方法的名字;
__METHOD__返回类的名字和方法的名字。
<?php class Test{ public function doit(){ echo __FUNCTION__; } public function doitAgain(){ echo __METHOD__; } } $obj = new Test(); $obj->doit(); echo '<br>'; $obj->doitAgain(); ?>
输出结果为:
doit Test::doitAgain
希望本文所述对大家的PHP程序设计有所帮助。
相关推荐
-
php魔术变量用法实例详解
本文实例讲述了php魔术变量用法,其中__DIR__是php5.3新增的,分享给大家供大家参考.具体用法分析如下: 系统常量 __FILE__ 当前文件名 __LINE__ 当前行数 __FUNCTION__ 当前函数名 __CLASS__ 当前类名 __METHOD__ 当前对象的方法名 详细分析 1. __FILE__ 文件的完整路径和文件名.如果用在被包含文件中,则返回被包含的文件名.自 PHP 4.0.2 起,__FILE__ 总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径)
-
php魔术函数__call()用法实例分析
本文实例分析了php魔术函数__call()用法.分享给大家供大家参考.具体如下: php魔术函数__call()的介绍,看完下面的实例就明白了: <?php class A{ public $name; function test1($a){ echo "test1111"; } function test2($a){ echo "test2222"; } //当某个对象调用某个方法,而当该方法不存在时,则系统会自动调用__call() function _
-
php 魔术函数使用说明
什么是魔术函数? 对于__开头的函数就命名为魔术函数, 此类函数都在特定的条件下触发的.比如: __set() __get()等 在设置或取不存在的属性时候触发. 有那些魔术函数呢? 总的来说, 有下面几个魔术函数 __construct() __destruct() __get() __set() __isset() __unset() __call() __callStatic() __sleep() __wakeup() __toString() __set_state() __clone
-
php教程之魔术方法的使用示例(php魔术函数)
复制代码 代码如下: /** PHP把所有以__(两个下划线)开头的类方法当成魔术方法.所以你定义自己的类方法时,不要以 __为前缀. * */ // __toString.__set.__get__isset().__unset()/* The __toString method allows a class to decide how it will react when it is converted to a string. __set() is run when writing d
-
php魔术方法与魔术变量、内置方法与内置变量的深入分析
php内置变量了:DIRECTORY_SEPARATORDIRECTORY_SEPARATOR是一个返回跟操作系统相关的路径分隔符的php内置命令,在windows上返回/,而在linux或者类unix上反悔/,就是这么个区别,通常在定义包含文件路径或者上传保存目录的时候会用到.PHP 把所有以 __ (两个下划线)开头的类方法当成魔术方法.所以你定义自己的类方法时,不要以 __ 为前缀. 1 . __construct()当实例化一个对象的时候,这个对象的构造方法将首先被调用:我们知道 p
-
PHP 魔术变量和魔术函数详解
魔术变量 PHP 向它运行的任何脚本提供了大量的预定义常量. 不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了. 有八个魔术常量它们的值随着它们在代码中的位置改变而改变. 例如 __LINE__ 的值就依赖于它在脚本中所处的行来决定.这些特殊的常量不区分大小写,如下: __LINE__ 文件中的当前行号. 实例: 复制代码 代码如下: <?php echo '这是第 " ' . __LINE__ . ' " 行'
-
PHP中魔术变量__METHOD__与__FUNCTION__的区别
本文实例讲述了PHP中魔术变量__METHOD__与__FUNCTION__的区别,分享给大家供大家参考.具体分析如下: __METHOD__类的方法名(PHP 5.0.0 新加).返回该方法被定义时的名字(区分大小写). __FUNCTION__函数名称(PHP 4.3.0 新加).自 PHP 5 起本常量返回该函数被定义时的名字(区分大小写).在 PHP 4 中该值总是小写字母的. 文档解释都是说返回函数(方法)的名字.区别在于: __FUNCTION__只是返回方法的名字: __METHO
-
JavaScript中令你抓狂的魔术变量
在存在这么一个变量 tt, 它满足下面的代码. 代码执行完毕后 ,errCount=0 而且 断言函数也从未 alert 信息 代码如下: 复制代码 代码如下: <script> var tt=/* 请在这里定义tt */; var errCount=0 //全局变量,用来记录 assert 函数出现断言宣告的次数 /* 断言函数 如果v为假,该函数就 alert("assert error"),并累加计数器 errCount 如果v为真,就什么
-
PHP超级全局变量、魔术变量和魔术函数汇总整理
PHP在设计的时候已经预定义了9个超级全局变量.8个魔术变量和13魔术函数,这些变量和函数可以在脚本的任何地方不用声明就可以使用. 在PHP开发会频繁的使用这些变量和函数,这些变量和函数可以方便的帮我们解决很多问题.下面详细的讲解下PHP中的超级全局变量.魔术变量和魔术函数. PHP超级全局变量(9个) $GLOBALS:储存全局作用域中的变量 $_SERVER:获取服务器相关信息 $_REQUEST:获取POST和GET请求的参数 $_POST:获取表单的POST请求参数 $_GET:获取表单
-
PHP 中魔术常量的实例详解
PHP 中魔术常量的实例详解 本文介绍下,php编程中的魔术常量,掌握并灵活应用这些方法与常量,对于提高php的编程水平,有很大的帮助.有需要的朋友参考学习下. 魔术常量: namespace ns1; class Test { function __construct() { var_dump(__LINE__); var_dump(__FILE__); var_dump(__DIR__); var_dump(__FUNCTION__); var_dump(__CLASS__); var_du
-
PHP中静态变量的使用方法实例分析
本文实例讲述了PHP中静态变量的使用方法.分享给大家供大家参考,具体如下: 1.定义静态变量 public static $endpoint,$accessKeyId,$accessKeySecret,$bucket; 2.静态变量赋值 protected function _initialize() { self::$endpoint = C('OSS_ENDPOINT'); self::$accessKeyId = C('OSS_ACCESS_ID'); self::$accessKeySe
-
浅谈iOS开发中static变量的三大作用
(1)先来介绍它的第一条也是最重要的一条:隐藏 当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性.为理解这句话,我举例来说明.我们要同时编译两个源文件,一个是a.c,另一个是main.c. 下面是a.c的内容 char a = 'A'; // global variable void msg() { printf("Hello\n"); } 下面是main.c的内容 int main(void) { extern char a; // extern v
-
mysql查询语句中用户变量的使用代码解析
上一篇文章中我们介绍了MySQL优化总结-查询总条数.这篇文章我们来介绍下查询语句中的另一个知识:用户变量的使用代码解析. 先上代码吧 SELECT `notice`.`id` , `notice`.`fid` , `notice`.`has_read` , `notice`.`notice_time` , `notice`.`read_time` , `f`.`fnum` , `f`.`forg` , `f`.`fdst` , `f`.`actual_parking` AS `parking`
随机推荐
- Yii全局函数用法示例
- PostgreSQL教程(四):数据类型详解
- js之ActiveX控件使用说明 new ActiveXObject()
- Windows Server 2003 R2 Beta 2将公测
- IIS访问网站的用户过多解决方法
- 神盾加密解密教程(三)PHP 神盾解密工具
- 详解nodejs与javascript中的aes加密
- zaq5.exe zaq8.exe 之最新熊猫烧香专杀工具
- 将鼠标焦点定位到文本框最后(代码分享)
- asp.net(c#)下Jmai去说明 使用与下载
- C#通过反射打开相应窗体方法分享
- php根据数据id自动生成编号的实现方法
- Android ToolBar整合实例使用方法详解
- python实现决策树
- Android中的人脸检测的示例代码(静态和动态)
- pandas 层次化索引的实现方法
- 使用python连接mysql数据库之pymysql模块的使用
- Python pandas.DataFrame 找出有空值的行
- WPF如何绘制光滑连续贝塞尔曲线示例代码
- springBoot 打war包 程序包com.sun.istack.internal不存在的问题及解决方案