Friday, May 19, 2017

[PHP][MYSQL] 如何知道SQL連線是否已關閉?(使用 ping() ,以 mysqli 為例)

當程式碼非常複雜時,有時我沒無法確定當下是否仍與SQL保持連線,這時可以透過 ping() 這個方法去測試,使用方法很簡單...

$conn = new mysqli($servername, $username, $password);
//省略一萬行複雜的程式碼
if (@$conn->ping()) {
    echo "連線中";
} else {
    echo "連線已關閉";
}

備註:
1. 萬一那一萬行程式碼裡面執行過 $conn->close(); 就會回傳"連線已關閉"。
2. 加上@是因為假如在連線關閉狀況下使用任何SQL函式(包含 ping ),都會有錯誤訊息,所以用@來忽略。

No comments:

Post a Comment