魔术方法__call()实例详解(php面向对象高级教程)
程序员文章站
2022-03-17 21:32:29
...
什么是__call()魔术方法?
__call是魔术方法中的一个,当程序调用到当前类中未声明或没权限调用的方法时,就会调用__call方法。__call()方法包含两个参数,即方法名和方法参数。其中,方法参数是以数组形式存在的。
下面我们举个简单的例子帮助大家理解:
<?php header("content-type:text/html;charset=utf-8"); class Sport{ public function run(){ echo '方法存在直接调用我'; } function __call($name, $arguments) { echo '方法不存在调用我'; echo '<br/>'; echo '方法名为:'. $name; echo '<br/>'; echo '参数为:<pre>'; var_dump($arguments); } } $sport = new Sport(); $sport ->run(); echo '<br/>'; $sport ->football('贝克汉姆',30);
我们创建一个类,在类中创建一个run方法和魔术方法__call()。接着,我们实例化对象$sport调用两个方法,一个是在类中存在的run()方法,一个是不存在的football()方法。大家可以运行代码查看结果。
以上就是魔术方法__call()实例详解(php面向对象高级教程)的详细内容,更多请关注其它相关文章!
上一篇: php与文件操作_PHP教程
推荐阅读
-
php面向对象高级-魔术方法与迭代器
-
php 面向对象中的魔术方法_PHP教程
-
php面向对象中final类与final方法用法实例详解
-
php面向对象中的魔术方法中文说明_PHP教程
-
php面向对象中的魔术方法中文说明_PHP教程
-
php面向对象重载新的方法实例详解
-
PHP5面向对象详解 - (10) __set() __get() __isset() __unset()四个方法_PHP教程
-
php面向对象抽象方法和抽象类 __call 克隆对象详细教程
-
php面向对象抽象方法和抽象类 __call 克隆对象详细教程
-
PHP5面向对象详解 - (10) __set() __get() __isset() __unset()四个方法_PHP教程