【发布时间】:2016-12-28 17:36:51
【问题描述】:
我有几个方法的返回值被缓存,缓存键是方法本身的名称。
例如,如果这是我的课
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() 一样调用它们?还是有更简单的方法?
【问题讨论】:
-
应该和这里的用例一样stackoverflow.com/questions/2108795/…