我正在尝试做这样的事情:
function doSomething($param, Class) {
Class::someFunction();
}
$someVar = doSomething($param, Class);
这可能吗?
为了更好地解释我正在尝试做的事情。我在 Laravel 中有一个辅助函数来生成独特的 slug,所以我必须根据 slug 的保存位置查询不同的表。
我正在尝试编写的实际代码:
$newcat->slug = $helper->uniqueSlug($appname, Apk);
public function uniqueSlug($str, Apk)
{
$slug = Str::slug($str);
$count = Apk::whereRaw("slug RLIKE '^{$slug}(-[0-9]+)?$'")->count();
return $count ? "{$slug}-{$count}" : $slug;
}
谢谢!
最佳答案
你可以使用神奇的::class
常量:
public function uniqueSlug($str, $model)
{
$slug = Str::slug($str);
$count = $model::whereRaw("slug RLIKE '^{$slug}(-[0-9]+)?$'")->count();
return $count ? "{$slug}-{$count}" : $slug;
}
$newcat->slug = $helper->uniqueSlug($appname, Apk::class);
关于php - 将类作为函数参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32614696/