在名称空间中调用PDO :: setAttribute
我想使用内置的PDO类连接到一个mysql数据库。
如果我理解正确,PDO方法默认不会抛出异常。 它是否正确?
所以我尝试改变错误模式:
$pdo = new PDO($dsn, $user, $password);
$ pdo-> setAttribute(PDO :: ATTR_ERRMODE,PDO :: ERRMODE_EXCEPTION);
我的问题是我在我的类中使用命名空间,所以我必须写:
$pdo = new PDO($dsn, $user, $password);
但我不知道如何在这种情况下设置错误模式。
$pdo = new PDO($dsn, $user, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
同样的方式,你最初宣布,我的朋友!
记住, PDO
本身就是类,不管你是在声明一个新的实例( new PDO
),还是在引用静态常量( PDO::ATTR_ERRMODE
)。 由于您位于名称空间内,因此您必须使用前缀。 这适用于每一次
PDO
,都是同一个班级。 所以我们始终使用PDO
。
记住这可能很棘手,你也可以use PDO;
在顶部,然后在整个过程中正常使用PDO
。 挑一个,并坚持到处。