Я изучаю PDO, и конструктор, похоже, использует неортодоксальный и непоследовательный способ получения аргументов.А именно:
$dbh = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
Почему отличается от обычного формата:
$dbh = new PDO("mysql", $host, $dbname, $user, $pass);
Или, поскольку первые два аргумента (host и dbname) записаны как одна длинная строка, почему бы не продолжитьс оставшимися двумя аргументами?А именно:
$dbh = new PDO("mysql:host=$host;dbname=$dbname;user=$user;pass=$pass");