1

我有这门课

class DateTimeHelper
{
    public static function getDateTimeNow()
    {
        return new \DateTime('now');
    }
}

我想在测试中重新定义我想要的输出:

所以我这样做:

    $r = runkit_method_redefine(
        DateTimeHelper::class,
        'getDateTimeNow',
        '',
        'return new \DateTime(\'2016-01-01\');',
        (RUNKIT_ACC_PUBLIC | RUNKIT_ACC_STATIC)
    );

    var_dump($r);
    var_dump(DateTimeHelper::getDateTimeNow());

但是 runkit 总是返回 false。所以方法没有被重新定义我得到当前的日期时间并且不能得到关于什么是错误的更多信息。

有没有办法获得更多信息是错误的还是我做错了什么?

4

0 回答 0