gpt4 book ai didi

php - 在 PHP 中将静态方法作为参数传递

转载 作者:IT王子 更新时间:2023-10-29 01:10:20 26 4
gpt4 key购买 nike

在 PHP 中是否可以这样做:

myFunction( MyClass::staticMethod );

这样 'myFunction' 将引用静态方法并能够调用它。当我尝试它时,我收到“未定义的类常量”(PHP 5.3)的错误,所以我想这不是直接可能的,但有没有办法做类似的事情?到目前为止,我管理的最接近的方法是将“函数”作为字符串传递并使用 call_user_func()。

最佳答案

执行此操作的“php 方式”是使用与 is_callable 完全相同的语法。和 call_user_func .

这意味着你的方法对存在是“中性的”

  • 标准函数名
  • 静态类方法
  • 实例方法
  • 关闭

对于静态方法,这意味着您应该将其传递为:

myFunction( [ 'MyClass', 'staticMethod'] );

或者如果您还没有运行 PHP 5.4:

myFunction( array( 'MyClass', 'staticMethod') );

关于php - 在 PHP 中将静态方法作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11655667/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com