我正在尝试根据数据库是否可以连接来显示服务器状态.有了旧学校mysql_connect(),mysqli_connect()很容易.我试图保持现代化,所以我正在使用PDO,但我无法弄清楚如何抑制默认警告.据我所知,你需要使用getMessage()它的功能来打印PDO警告,但我没有使用它.
这是我的代码:
8 $dbstatus = 1;
9 try {
10 $db = new PDO($dbms . ':host=' . $dbhost . ';port=' . $dbport . ';dbname=' . $dbname, $dbuser, $dbpasswd);
11 $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
12 } catch(PDOException $e) {
13 $dbstatus = 0;
14 }
15 if($dbstatus == 1) {
16 echo '<span style="color: green">DB Up</span>';
17 } else {
18 echo '<span style="color: red">DB Down</span>';
19 exit;
20 }
Run Code Online (Sandbox Code Playgroud)
提供的所有连接变量都是正确的,除了$dbhost故意破坏以测试它.现在,它会产生所需的结果,但也会打印一条警告消息:
警告:PDO :: __ …