首页 > 编程知识 正文

php函数call(php函数的定义和调用)

时间:2023-12-07 13:39:23 阅读:312924 作者:WXDQ

本文目录一览:

  • 1、php中怎么使用call
  • 2、如何在PHP中使用call
  • 3、php中怎么用call

php中怎么使用call

PHP5 的对象新增了一个专用方法 __call(),这个方法用来监视一个对象中的其它方法。如果你试着调用一个对象中不存在的方法,__call 方法将会被自动调用。 ?php class foo { function __call($name,$arguments) { print("Did you call me? I'm $name!"); } } $x = new foo(); $x-doStuff(); $x-fancy_stuff(); ? 这个特殊的方法可以被用来实现“过载(overloading)”的动作,这样你就可以检查你的参数并且通过调用一个私有的方法来传递参数。 ?php class Magic { function __call($name,$arguments) { if($name=='foo') { if(is_int($arguments[0])) $this-foo_for_int($arguments[0]); if(is_string($arguments[0])) $this-foo_for_string($arguments[0]); } } private function foo_for_int($x) { print("oh an int!"); } private function foo_for_string($x) { print("oh a string!"); } } $x = new Magic(); $x-foo(3); $x-foo("3"); ?

如何在PHP中使用call

__call()方法,为了避免当调用的方法不存在时产生错误,可以使用 __call() 方法来避免。该方法在调用的方法不存在时会自动调用,程序仍会继续执行下去。

如果你说的call只是调用函数。那就只需要定义函数 直接调用

php中怎么用call

__call 是一个魔术方法,当调用一个不可访问的对象方法(非静态方法),会自动的执行该魔术方法。public funciton __call($name,$arr)

比如,在类外部,调用类中一个不存在的方法,就会自动执行这个__call方法( $name,$arr),参数$name代表的是你调用的方法名,$arr代表的是你调用这个方法里面的所有参数。

class a {

pu blic function __call($name,$arr){

echo $name;

var_dump($arr);

}

}

$a = new a();

$a-testa(1,2,3);

此时,$name就是testa $arr就是array(1,2,3)组成的数组。

黑马程序员的PHP是国内最早开设的真正人工智能课程。课程全面系统,紧跟时代潮流。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。