Khi tôi mở một kết nối MySQL trong PHP chỉ với chức năng MySQL tích hợp PHP, tôi thực hiện như sau:kết nối Do SQL mở với PDO trong PHP phải được đóng
$link = mysql_connect($servername, $username, $password);
mysql_select_db($dbname);
//queries etcetera
mysql_close($link);
Khi tôi mở một kết nối với PDO, nó trông như thế này:
$link = new PDO("mysql:dbname=$dbname;host=$servername",$username,$password);
//prepare statements, perform queries
tôi có phải đóng một cách rõ ràng các kết nối như tôi làm với mysql_connect()
và mysql_close()
? Nếu không, làm thế nào để PHP biết khi nào tôi thực hiện xong kết nối của mình?
TIA.
Cảm ơn! Nhiều đánh giá cao. – benjy
Tôi tự hỏi liệu PDO dtor có đóng kết nối một cách rõ ràng hay không, nó giống như những gì xảy ra khi 'mysql_close()' không được sử dụng ở cuối kịch bản (hoặc trong '__destruct()' của lớp db của bạn) ? Từ hướng dẫn, có vẻ như khi đối tượng PDO bị hủy, kết nối cũng bị đóng. Quan trọng vì điều này: http://stackoverflow.com/a/2960656/372654. Có vẻ như vậy từ mã nguồn PDO nhưng ... –
WOuldn't một 'unset()' đối tượng PDO thay vì đặt nó thành NULL? Tôi thực sự muốn một số làm rõ về điều này! –