2 回答

TA貢獻(xiàn)1865條經(jīng)驗 獲得超7個贊
您可以在閉包上使用 Reflection API,這是一種比debug_backtrace
// in one of my controller I use for testing, I added these 2 methods for testing
public function index(){
$sortFunction = Order::defaultSortFunction();
$this->someOtherFunction($sortFunction);
return 'done';
}
private function someOtherFunction($fn){
$reflectionClosure = new \ReflectionFunction($fn);
dd($reflectionClosure->getClosureScopeClass()->getName());
}
getClosureScopeClassReflectionClass根據(jù)您需要查找的類返回一個實例并getName完成作業(yè)。

TA貢獻(xiàn)1805條經(jīng)驗 獲得超9個贊
您當(dāng)然可以通過 defaultSortFunction 中的參數(shù)將類名注入到閉包中,但這顯然不太好。
如果您使用 limit 參數(shù),您應(yīng)該能夠?qū)⑵湎拗茷閮H返回調(diào)用類,而不再返回。
我不確定,但我懷疑它的性能不是特別好。
- 2 回答
- 0 關(guān)注
- 208 瀏覽
添加回答
舉報