php __call方法是调用未定义的方法时调用的,使用语法如“$foo->__call('test', array(1, "2", 3.4, true))”,也就是相当于“$foo->test(1, "2", 3.4, true)”。

推荐:《PHP视频教程》
php魔术方法__call的用法
__call是调用未定义的方法时调用的。
也就是说,你的test方法未定义,那么test这个方法名就会作为__call的第一个参数传入,而test的参数会被装进数组中作为__call的第二个参数传入。
立即学习“PHP免费学习笔记(深入)”;
启科网络商城系统由启科网络技术开发团队完全自主开发,使用国内最流行高效的PHP程序语言,并用小巧的MySql作为数据库服务器,并且使用Smarty引擎来分离网站程序与前端设计代码,让建立的网站可以自由制作个性化的页面。 系统使用标签作为数据调用格式,网站前台开发人员只要简单学习系统标签功能和使用方法,将标签设置在制作的HTML模板中进行对网站数据、内容、信息等的调用,即可建设出美观、个性的网站。
0
所以当你调用$foo->test(1, "2", 3.4, true)时,实际是相当于调用$foo->__call('test', array(1, "2", 3.4, true))。
__call方法在调用类的方法时触发,比如:
<?php
class google{
public function search(){
//TODO
}
public function __call($method, $parameters){
//这里的method便是对应的方法,即"->"后面的字符串,$parameters是通过这个方法传过来的参数
}
}
$google = new google();
$keyword = 'VR';
$google->search($keyword);
//当调用当前对象不存在的方法时,会转向__call
$google->operate();利用__call可以做些封装,从而调用其它对象和方法。
以上就是php __call方法如何使用的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号