【发布时间】:2010-02-26 07:20:53
【问题描述】:
同时使用下面的构造函数
$this->pdo = new PDO ($this->source, $this->username, $this->password);
如果我没有任何密码,那么我应该传递一个 NuLL 值来创建一个新的 PDO 实例吗?
【问题讨论】:
同时使用下面的构造函数
$this->pdo = new PDO ($this->source, $this->username, $this->password);
如果我没有任何密码,那么我应该传递一个 NuLL 值来创建一个新的 PDO 实例吗?
【问题讨论】:
你检查过文档吗?
PDO::__construct ( string $dsn [, string $username [, string $password [, array $driver_options ]]] )
唯一需要的参数是DSN,用户名和密码是可选的。
【讨论】:
如果您知道您的 dn 需要密码,您可能需要在尝试创建 PDO 对象之前检查它是否不为空。或者只是在这件事上使用 try / catch,就像 php.net/PDO 中的这个例子一样
<?php
/* Connect to an ODBC database using driver invocation */
$dsn = 'mysql:dbname=testdb;host=127.0.0.1';
$user = 'dbuser';
$password = 'dbpass';
try {
$dbh = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
?>
【讨论】: