重複の可能性:
Windowsプラットフォーム上のmysql_connect(localhost / 127.0.0.1)
開発マシンでApacheとPHPのバージョンを更新したところ、PDOが完全に機能しなくなりました。
これは非常に単純なPDOクラスです。
class PDO_DBH {
public static function openSesame() {
echo '<p>start openSesame: </p>'.microtime(true);
$db_username = 'root';
$db_password = 'pass';
try {
$dbh = new PDO('mysql:host=localhost;dbname=DB_NAME', $db_username, $db_password);
$dbh->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
echo '<p>end successful openSesame: </p>'.microtime(true);
return $dbh;
} catch (PDOException $e) {
echo '<p>end failed openSesame: </p>'.microtime(true);
return 'PDO database access error!';
}
}
}
アップグレードする前、および現在他の開発マシンでは、通常のページは1秒で読み込まれます。最大で2つです。
さて、の驚異を介してmicrotime(true)
、私は各接続の開始に約1秒かかるのを見ています。
通常のページでは、新しいページが作成され$dbh
、その後$dbh = null;
、さまざまなオブジェクトやメソッドが必要なデータを取得するときに20回作成されます。これは、他のマシンや私のウェブホストでは問題になりませんでした。
ここでどこが間違っているのですか?