0
我有一个类,看起来像这样: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
现在,意识到需要声明似乎是工作。如果我向Result类中添加一个属性,并在它的一个实例上使用print_r,它看起来是正确的。但静态方法消失。我很困惑。我正在运行PHP 5.2.6。
如果将您的require_once语句替换为require_once dirname(FILE)。 '/ utils/Result.php'` - 会发生什么? – jason 2009-07-31 21:28:06
呃,该死的,注释格式化...应该是下划线下划线文件下划线下划线 – jason 2009-07-31 21:29:00