我有一个看起来像这样的课程:
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。
答案 0 :(得分:2)
您在更改为(test
)的目录中是否有'utils / Result.php'文件?如果是,则将包含它而不是原始文件。