溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么在php中利用pdo對sql數(shù)據(jù)庫進行連接

發(fā)布時間:2020-12-22 14:49:45 來源:億速云 閱讀:160 作者:Leah 欄目:開發(fā)技術(shù)

這篇文章給大家介紹怎么在php中利用pdo對sql數(shù)據(jù)庫進行連接,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

具體實現(xiàn)代碼如下:

復制代碼 代碼如下:

$login = "root";
$passwd = "mysql";
try{
  $db=new pdo('mysql:host=localhost;dbname=mysql',$login,$passwd);
  foreach($db->query('select * from test') as $row){
  print_r($row);
  }
  $db=null;
}catch(pdoexception $e){
  echo $e->getmessage();
}


再來看一個高級一點的:

復制代碼 代碼如下:

$dbms='mysql'; //數(shù)據(jù)庫類型 oracle 用odi,對于開發(fā)者來說,使用不同的數(shù)據(jù)庫,只要改這個,不用記住那么多的函數(shù)了
$host='localhost'; //數(shù)據(jù)庫主機名
$dbname='test'; //使用的數(shù)據(jù)庫
$user='root'; //數(shù)據(jù)庫連接用戶名
$pass=''; //對應(yīng)的密碼
$dsn="$dbms:host=$host;dbname=$dbname"; 
class db extends pdo {   
 public function __construct(){        
 try {             
 parent::__construct("$globals[dsn]", $globals['user'], $globals['pass']);         
 } catch (pdoexception $e) {         
  die("error: " . $e->__tostring() . "<br/>");       
  }    
  }        
 public final function query($sql){        
 try {           
  return parent::query($this->setstring($sql));        
  }catch (pdoexception $e){            
  die("error: " . $e->__tostring() . "<br/>");       
   }
   }        
   private final function setstring($sql){        
   echo "我要處理一下$sql";        
   return $sql;    }}
   $db=new db();
   $db->setattribute(pdo::attr_case, pdo::case_upper);
   foreach ($db->query('select * from xxxx_menu') as $row) {    
   print_r($row);
   }
$db->exec('delete from `xxxx_menu` where mid=43');


關(guān)于pdo說明

pod(php data object)擴展在php5中加入,php6中將默認識用pdo連接數(shù)據(jù)庫,所有非pdo擴展將會在php6被從擴展中移除。該擴展提供php內(nèi)置類 pdo來對數(shù)據(jù)庫進行訪問,不同數(shù)據(jù)庫使用相同的方法名,解決數(shù)據(jù)庫連接不統(tǒng)一的問題。

我是配置在windows下做開發(fā)用的。

pdo的目標:

提供一種輕型、清晰、方便的 api,統(tǒng)一各種不同 rdbms 庫的共有特性,但不排除更高級的特性,通過 php 腳本提供可選的較大程度的抽象/兼容性.

pdo的特點:

性能,pdo 從一開始就吸取了現(xiàn)有數(shù)據(jù)庫擴展成功和失敗的經(jīng)驗教訓,因為 pdo 的代碼是全新的,所以我們有機會重新開始設(shè)計性能,以利用 php 5 的最新特性.

能力

pdo 旨在將常見的數(shù)據(jù)庫功能作為基礎(chǔ)提供,同時提供對于 rdbms 獨特功能的方便訪問.

簡單

pdo 旨在使您能夠輕松使用數(shù)據(jù)庫,api 不會強行介入您的代碼,同時會清楚地表明每個函數(shù)調(diào)用的過程.

運行時可擴展

pdo 擴展是模塊化的,使您能夠在運行時為您的數(shù)據(jù)庫后端加載驅(qū)動程序,而不必重新編譯或重新安裝整個 php 程序,例如,pdo_oci 擴展會替代 pdo 擴展實現(xiàn) oracle 數(shù)據(jù)庫 api,還有一些用于 mysql、postgresql、odbc 和 firebird 的驅(qū)動程序,更多的驅(qū)動程序尚在開發(fā).

關(guān)于怎么在php中利用pdo對sql數(shù)據(jù)庫進行連接就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI