我有几个方法,其缓存返回,缓存键是方法本身的名称。
例如,如果这是我的班级
class tester {
static function test() {
$data = build_data();
cache(__METHOD__, $data);
}
}
缓存键值为tester::test
。
我正在实现加热缓存的功能。如果我有所有缓存键,我可以逐个调用它们。
foreach ( $keys as $key ) {
$key();
}
但显然,我不能以这种方式调用像'tester::test'
这样的字符串
Fatal error: Call to undefined function tester::test() ...
我是否必须进行字符串解析,拆分类名和方法,然后将其称为$class::$method()
?或者有更简单的方法吗?
答案 0 :(得分:0)
感谢Michael Lihs在评论中将问题联系起来;事实证明,call_user_func()
做了我正在寻找的事情。