Php 基于var的Laravel调用静态函数
好的,我相信有一个很好的方法。但是我被卡住了 基本上,我有一个“自定义处理程序”文件夹,在一组产品上运行函数。文件夹(和命名空间)结构如下所示Php 基于var的Laravel调用静态函数,php,laravel,namespaces,Php,Laravel,Namespaces,好的,我相信有一个很好的方法。但是我被卡住了 基本上,我有一个“自定义处理程序”文件夹,在一组产品上运行函数。文件夹(和命名空间)结构如下所示 HANDLERS -MAIN --Generate.php --List.php -THREAD --Generate.php --List.php -TEST --Generate.php --List.php “generate.php”和“list.php”中包含静态函数,它们都共享这些函数。在我的控制器中,我想根据模型的属性调用其中一个处理程序
HANDLERS
-MAIN
--Generate.php
--List.php
-THREAD
--Generate.php
--List.php
-TEST
--Generate.php
--List.php
“generate.php”和“list.php”中包含静态函数,它们都共享这些函数。在我的控制器中,我想根据模型的属性调用其中一个处理程序。比如:
\Handlers\$product->handler\Generate::go();
如果产品使用“线程”,它将调用
\Handlers\Thread\Generate::go();
有没有一个简单的方法可以做到这一点
干杯 您可以使用
call\u user\u func
对动态类名调用方法,例如:
<?php
namespace MyPackage;
class Foo
{
public static function bar()
{
echo 'Hello';
}
}
$className = "\\MyPackage\\Foo";
call_user_func([$className, 'bar']);
您可以使用call\u user\u func
调用动态类名上的方法,例如:
<?php
namespace MyPackage;
class Foo
{
public static function bar()
{
echo 'Hello';
}
}
$className = "\\MyPackage\\Foo";
call_user_func([$className, 'bar']);
啊,我猜到了!我应该试一下,而不是想一些独特的处理方法。将在5分钟内接受:)啊,我猜到了!我应该试一下,而不是想一些独特的处理方法。将在5分钟内接受:)