2014-02-06 4 views
7

Что такое PDO эквивалент:PHP/PDO: Как получить текущее состояние соединения

mysqli_stat($dbConn); 

P.S. Я использую его (получить сообщение) убедитесь, что я подключен

+0

@witherwind это не дубликат. Я ищу способ установления соединения. Другой вопрос - проверить соединение. – Omar

ответ

11

I не может получить кредит за этот ответ. Кто-то отправил ответ, но он/она удалил запись.

Вот (saved archived) ответ на ваш вопрос:

$status = $conn->getAttribute(PDO::ATTR_CONNECTION_STATUS); 
+4

Тогда вы получите кредит на спасение от забвения (и помощь мне). :) – Russ

+1

@russ Вы правы! Спасибо!!! – Omar

1

$ pdo-> GetAttribute (PDO :: ATTR_CONNECTION_STATUS) всегда возвращает "127.0.0.1 через TCP/IP", даже если я остановить туздЫ, чтобы использовать:

if ($pdo->getAttribute(PDO::ATTR_SERVER_INFO)=='MySQL server has gone away') 
{ 
    $pdo=new PDO('mysql:host=127.0.0.1;port=3306;dbname=mydb;charset=UTF8', 'root', '', array(PDO::ATTR_PERSISTENT=>true)); 
} 
0

Вы можете использовать этот код, чтобы проверить ваше соединение PDO

/* PDO connection start */ 
    try { 

     $conn = new PDO("mysql:host=$server; dbname=$sdosmsDB", $username, $password); 
     $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); /* PDO::ERRMODE_EXCEPTION, PDO::ERRMODE_SILENT, and PDO::ERRMODE_WARNING */   
     $conn->exec("SET CHARACTER SET utf8"); 

    } catch(PDOException $e) { 

     die('Database Connection failed: ' . $e->getMessage()); 

    } 
    /* PDO connection end */ 
Смежные вопросы