2016-02-04 114 views
0

通常有兩種類型的網絡超時。首先是當試圖連接到服務器 - 連接超時。其次是當連接到服務器已經建立和客戶端(在這種情況下PDO)發送查詢到服務器,並等待它的響應 - 讀取超時。php - PDO :: ATTR_TIMEOUT是連接超時還是讀取超時?

我無法找到有關PDO :: ATTR_TIMEOUT的信息是連接超時還是讀取超時?

回答

3

取決於驅動程序。來自docs

PDO :: ATTR_TIMEOUT:指定以秒爲單位的超時持續時間。並非所有驅動程序都支持此選項,其含義可能因驅動程序而異。例如,sqlite會在放棄獲取可寫鎖之前等待達到此時間值,但其他驅動程序可能將此解釋爲連接讀取超時區間。

+1

如果有人能夠描述它是所有驅動程序的含義,那將會很好。如果PDO的作者可以將它分成兩個參數「PDO :: ATTR_CONNECT_TIMEOUT」和「PDO :: ATTR_READ_TIMEOUT」,情況會更好。 –