我正在写一个PHP小库,我有一些内置类不被读取的问题。例如:
namespace Woody;
class Test {
public function __construct() {
$db = new PDO(params);
}
}
这给了我:
PHP致命错误:在/var/www/test. PHP中找不到Woody'PDO类
This:
namespace Woody;
use PDO;
或:
$db = new 'PDO(params);
点的情况是,类PDO
不是一个完整的限定名在您的命名空间,所以PHP将寻找Woody'PDO
是不可用的。
请参阅名称解析规则Docs了解如何将类名解析为完全限定名的详细说明。
在类名前加反斜杠,即
$db = new 'PDO(params);
下面应该可以工作:
namespace Woody;
class Test {
public function __construct() {
$db = new 'PDO(params);
}
}
你需要在PDO前加上反斜杠这样PHP就知道它在全局命名空间