当目录更改时,PHP静态函数不起作用?

时间:2009-07-31 21:12:37

标签: php

我有一个看起来像这样的课程:

utils的/ Result.php

<?php

class Result
{
    public static function ok()
    {
        echo "OK";
    }   
}

如果我创建以下脚本

./ sandbox.php

<?php

require_once("utils/Result.php");

print_r(Result::ok());

使用php sandbox.php运行它可以正常工作。但如果我执行以下操作:cd test && php ../sandbox.php它会给我以下错误

PHP Fatal error:  Call to undefined method Result::ok() in /mnt/hgfs/leapback/sandbox.php on line 5

现在,意识到require语句似乎正在起作用。如果我向Result类添加一个属性,并在它的实例上使用print_r,它看起来是正确的。但静态方法消失了。我很困惑。我正在运行php 5.2.6。

1 个答案:

答案 0 :(得分:2)

您在更改为(test)的目录中是否有'utils / Result.php'文件?如果是,则将包含它而不是原始文件。