導航:首頁 > 編程語言 > PHP與MySQL案例剖析

PHP與MySQL案例剖析

發布時間:2023-12-15 10:26:23

『壹』 php連接mysql資料庫原理是怎樣的

現在使用PDO鏈接資料庫的較多

連接是通過創建 PDO 基類的實例而建立的。不管使用哪種驅動程序,都是用 PDO 類名。構造函數接收用於指定資料庫源(所謂的 DSN)以及可能還包括用戶名和密碼(如果有的話)的參數。

連接到 MySQL


<?php
$dbh=newPDO('mysql:host=localhost;dbname=test',$user,$pass);
?>

如果有任何連接錯誤,將拋出一個 PDOException 異常對象。如果想處理錯誤狀態,可以捕獲異常,或者選擇留給通過 set_exception_handler() 設置的應用程序全局異常處理程序。

處理連接錯誤


<?php
try{
$dbh=newPDO('mysql:host=localhost;dbname=test',$user,$pass);
foreach($dbh->query('SELECT*fromFOO')as$row){
print_r($row);
}
$dbh=null;
}catch(PDOException$e){
print"Error!:".$e->getMessage()."<br/>";
die();
}
?>

如果應用程序不在 PDO 構造函數中捕獲異常,zend 引擎採取的默認動作是結束腳本並顯示一個回溯跟蹤,此回溯跟蹤可能泄漏完整的資料庫連接細節,包括用戶名和密碼。因此有責任去顯式(通過 catch 語句)或隱式(通過 set_exception_handler() )地捕獲異常。

連接數據成功後,返回一個 PDO 類的實例給腳本,此連接在 PDO 對象的生存周期中保持活動。要想關閉連接,需要銷毀對象以確保所有剩餘到它的引用都被刪除,可以賦一個 NULL 值給對象變數。如果不明確地這么做,PHP 在腳本結束時會自動關閉連接。

關閉一個連接

<?php
$dbh=newPDO('mysql:host=localhost;dbname=test',$user,$pass);
//在此使用連接
//現在運行完成,在此關閉連接
$dbh=null;
?>

很多 web 應用程序通過使用到資料庫服務的持久連接獲得好處。持久連接在腳本結束後不會被關閉,且被緩存,當另一個使用相同憑證的腳本連接請求時被重用。持久連接緩存可以避免每次腳本需要與資料庫回話時建立一個新連接的開銷,從而讓 web 應用程序更快。

『貳』 php如何連接mysql

PHP 可以使慶漏用 MySQLi 或 PDO(PHP Data Objects)擴展來連接 MySQL 資料庫。

以下是使用 MySQLi 擴展連接 MySQL 資料庫的示例代碼:虛跡

pdo

請注意,您需要替換 hostname,username,差差並password 和 database_name 為自己的資料庫連接詳細信息。

『叄』 php為什麼棄用了mysql

PHP提供了三種不同的api連接到MySQL,這三種api是:mysql, mysqli以及PDO擴展。MySql函數是非常受歡迎的,但是官方團隊並不鼓勵再使用它們。在php手冊里邊,當你看到關於Mysql的函數,會發現都標有紅色的標志,那意味著它們已經被棄用了。棄用ext/mysql函數不僅安全,而且使用其他資料庫查詢方法可以同樣具有MySQL函數的所有功能。更好的方法是使用PDO代替ext/mysql函數。

以下是PHP里不應該再使用mysql函數的3大原因:
1、mysql函數已在PHP5.5中正式棄用,並將在PHP7中被刪除。
2、mysql函數缺少面向對象的介面。
3、mysql函數不支持以下特性:
不支持非阻塞連續獲取
不支持非同步查詢
不支持參數化查詢
不支持存儲過程
不支持多個語句
不支持在MySQL 5.1的中所有功能
不支持加密(SSL)
不支持壓縮
不支持完整的字元集

閱讀全文

與PHP與MySQL案例剖析相關的資料

熱點內容
胸7椎體輕度壓縮 瀏覽:108
sk5伺服器什麼意思 瀏覽:554
什麼是廊坊交警app 瀏覽:294
衣櫃造價演算法 瀏覽:984
默認的web伺服器地址 瀏覽:694
單片機與發光二極體 瀏覽:320
pythonwebmodule 瀏覽:328
空調壓縮機不停了 瀏覽:115
python序列怎麼取 瀏覽:199
線上資料庫加密怎麼查詢 瀏覽:794
js中數據加密 瀏覽:470
穴pdf 瀏覽:548
阿里雲伺服器雲資料庫還需要嗎 瀏覽:146
在程序設計中常用的演算法有哪些 瀏覽:977
為什麼蘇州公積金app一直維護 瀏覽:805
有ip地址但是dhcp伺服器 瀏覽:446
三星手機加密中斷怎麼回事 瀏覽:538
訓練模型init源碼 瀏覽:840
程序編譯是誰的功能 瀏覽:505
qq收藏怎樣設置加密 瀏覽:291