![]() |
1
103
使用 call_user_func 功能: http://php.net/manual/en/function.call-user-func.php 例子:
|
![]() |
2
18
我 认为 你可以这样做:
|
![]() |
3
14
我将封装您在工厂中需要的类的创建。 这样,当需要更改基名称或将语言映射到正确类的规则时,您将拥有一个入口点。
然后,当你不得不使用它时:
|
![]() |
4
6
虽然我认为你的交易方式是一个非常糟糕的主意,但我想我可能有一个解决办法
我想这就是你想要的 |
![]() |
5
6
正如Temuri所说,在尝试“$classname::functionname”时会产生分析错误:
在我的例子中(带有两个参数的静态方法),最好的解决方案是使用 call_user_func_array 使用2个阵列(如nick.org建议的那样):
溴 |
![]() |
6
1
就我所能理解的你的问题而言,你需要得到类名,可以用 get_class 功能。另一方面, Reflection class 在这里可以帮助您,这对于OOP方式中的方法、参数等非常有用。 |
![]() |
7
1
您可以轻松地执行以下操作:
在php 5.2>上测试,它会很好地工作。= |
![]() |
8
0
类似的解决方案:
不会起作用。PHP将产生分析错误。
不幸的是,唯一的方法是
非常慢
|
![]() |
9
-1
我知道这是一个旧线程,但是从php 5.3.0开始,您应该使用 forward_static_call
使用$language变量,它可能看起来像:
|