PHP命名空间和内置类的问题,如何解决?
2022-08-30 17:40:12
我正在用PHP编写一个小型库,并且遇到一些内置类无法读取的问题。例如:
namespace Woody;
class Test {
public function __construct() {
$db = new PDO(params);
}
}
这给了我:
PHP 致命错误:在 /var/www/test 中找不到类 'Woody\PDO'.php
我正在用PHP编写一个小型库,并且遇到一些内置类无法读取的问题。例如:
namespace Woody;
class Test {
public function __construct() {
$db = new PDO(params);
}
}
这给了我:
PHP 致命错误:在 /var/www/test 中找不到类 'Woody\PDO'.php
这:
namespace Woody;
use PDO;
艺术
$db = new \PDO(params);
以防万一的要点是,该类不是命名空间中的完整限定名,因此PHP将查找哪个不可用。PDO
Woody\PDO
有关如何将类名解析为完全限定名的详细说明,请参阅名称解析规则文档。
在类名前添加反斜杠,即
$db = new \PDO(params);