举报投诉联系我们 手机版 热门标签 编程学
您的位置:编程学 > php call方法 PHP __call()方法重载

php call方法 PHP __call()方法重载

2023-03-09 12:18 PHP教程

php call方法 PHP __call()方法重载

php call方法

PHP call 方法是一种非常有用的函数,它可以让你在 PHP 中调用其他函数。它的主要作用是可以让你在不同的类之间进行函数调用,而不必担心传递参数的问题。

PHP call 方法使用 call_user_func() 函数来实现,该函数接受两个参数:要被调用的函数名和一个包含所有参数的数组。例如:

$result = call_user_func('myFunction', array('param1', 'param2'));

上面代码中,call_user_func() 函数将会调用 myFunction() 函数,并传入两个参数 param1 和 param2 。

此外,call_user_func() 还支持传入对象方法作为回调函数。例如:

$obj = new MyClass(); 
$result = call_user_func(array($obj, 'myMethod'), array('param1', 'param2'));

上面代码中,call_user_func() 函数将会调用 MyClass 类中的 myMethod() 方法,并传入两个参数 param1 和 param2 。

PHP __call()方法重载


public mixed __call ( string $name , array $arguments )
public static mixed __callStatic ( string $name , array $arguments )

在对象中调用一个不可访问方法时,__call() 会被调用。

在静态上下文中调用一个不可访问方法时,__callStatic() 会被调用。

$name 参数是要调用的方法名称。$arguments 参数是一个枚举数组,包含着要传递给方法 $name 的参数。


实例

使用 __call() 和 __callStatic() 对方法重载

<?php
class MethodTest 
{
    public function __call($name, $arguments) 
    {
        // 注意: $name 的值区分大小写
        echo "Calling object method '$name' "
             . implode(', ', $arguments). "n";
    }

   
    public static function __callStatic($name, $arguments) 
    {
        // 注意: $name 的值区分大小写
        echo "Calling static method '$name' "
             . implode(', ', $arguments). "n";
    }
}

$obj = new MethodTest;
$obj->runTest('in object context');

MethodTest::runTest('in static context');  // PHP 5.3.0之后版本
?>

运行实例 »


阅读全文
以上是编程学为你收集整理的php call方法 PHP __call()方法重载全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
  • php操作mysql函数 PHP mysqli_errno() 函数

    php操作mysql函数 PHP mysqli_errno() 函数

    2023-04-04 PHP教程

    PHP mysqli_errno() 函数PHP MySQLi 参考手册实例 返回最近调用函数的最后一个错误代码:?php $con=mysqli_connect(localhost,my...

  •  PHP mysqli_get_host_info() 函数

    PHP mysqli_get_host_info() 函数

    2023-05-20 PHP教程

    PHP mysqli_get_host_info() 函数PHP MySQLi 参考手册实例 返回 MySQL 服务器主机名和连接类型:?php $con=mysqli_connect(local...

  •  PHP mysqli_commit() 函数

    PHP mysqli_commit() 函数

    2023-06-21 PHP教程

    PHP mysqli_commit() 函数 PHP MySQLi 参考手册实例关闭自动提交,做一些查询,然后提交查询:?php//假定数据库用户名:root,密...

  •  PHP Boolean

    PHP Boolean

    2023-04-17 PHP教程

    PHP教程 -PHP Boolean布尔值保持真或假。 在幕后,布尔是整数。假值此外,PHP将以下值视为 false :The literal value falseThe i...

  •  PHP mysqli_real_connect() 函数

    PHP mysqli_real_connect() 函数

    2023-03-29 PHP教程

    PHP mysqli_real_connect() 函数PHP MySQLi 参考手册实例 打开一个到 MySQL 服务器的新连接:?php $con=mysqli_init();if (!$con...

© 2024 编程学 bianchengxue.com 版权所有 联系我们
桂ICP备19012293号-7 返回底部