pdo類基本應用:了解pdo類的方法,使用pdo方法解決相應需求問題
pdo類雖然提供了很多方法,但是常用的方法有以下幾個
pdo::__construct():例項化pdo物件
pdo::exec():執行乙個寫操作sql指令,返回受影響的行數
pdo::query():執行乙個讀操作sql指令,返回乙個pdostatement類物件(後者進行資料解析操作)
pdo::errorcode()和pdo::errorinfo():獲取上次錯誤的資訊(錯誤碼和錯誤描述陣列)
pdo例項化物件:利用其構造方法__construct(string $dsn,string $user,string $pass[,array $drivers])實現,構造方法由4個引數組成,其中一般前三個為必須引數,第四個為可選引數
$dsn:乙個資料庫基本資訊字串,包含資料庫產品,主機位址等
驅動名字(資料庫產品),使用英文:分隔,如mysql:表示使用mysql資料庫
驅動選項(主機位址),使用host=具體主機位址,跟在驅動名字之後,如』mysql:host=localhost』
驅動選項(埠),使用port=埠號,預設為3306可以不寫,拼湊在驅動名字後,不區分先後順序。如』mysql:host=localhost;port=3306』或者』mysql:port=3306;host=localhost』,使用分號和其他驅動分開
驅動選項(資料庫名字),使用dbname=資料庫名字(可以事先沒有)
u se
r:使用者
名,如果
資料庫允
許匿名用
戶出現,
那麼可以
沒有該參
數(只有
user:使用者名稱,如果資料庫允許匿名使用者出現,那麼可以沒有該引數(只有
user:用
戶名,如
果資料庫
允許匿名
使用者出現
,那麼可
以沒有該
引數(只
有dsn)
$pass:密碼,與使用者名稱一樣
$drivers:pdo屬性設定,是關聯陣列,利用pdo內部的常量進行設定(不是pdo物件屬性,而是pdo對資料庫特性的屬性)
pdo查詢操作
通過執行sql指令後從資料庫獲得相應的資料,然後對資料加工程式設計php可識別的格式
pdo::query()方法只能執行sql,並不能直接解析結果,返回乙個pdostatement類物件
pdostatement::fetch()系列方法從物件中實現資料獲取
fetch:獲取一條記錄
fetchall:獲取全部記錄
fetch_style:通過常量設計的方式實現獲取資料的不同效果
pdo事務功能
並非pdo額外多出了一項功能,而是將原來mysql所支援的事務操作進行了一定的封裝實現
事務執行是否成功是由mysql對應的儲存引擎是否支援決定的
pdo只是對具體的操作步驟進行了封裝而已
pdo::begintransaction():開啟事務 ==== pdo::exec(『start transaction』)
pdo::exec():執行事務(寫操作)
pdo::rollback():回滾所有事務 ==== pdo::exec(『rollback』)
pdo::commit():成功提交所有事務
pdo預處理
pdo預處理:是pdo封裝一套特定的方法,在方法中做了一些優化操作,使得開發人員可以便捷的用來實現預處理
pdo預處理的實現是基於mysql預處理機制,只是針對預處理的操作過程進行了內部封裝
引數處理:可以使用原佔位符?,也可以使用pdo佔位符:名字
pdo中預處理提供了一套方法機制,主要由以下幾個方法組成
pdo::prepare():傳送預處理指令,只需要提供要執行的指令即可,不需要prepare 名字from。成功得到乙個pdostatement類物件,失敗得到乙個false(或者異常錯誤)
pdostatement::bindparam():繫結預處理所需要的引數,只能繫結變數(引用傳遞)
pdostatement::bindvalue():繫結預處理所需要的引數,可以繫結值(值傳遞
pdostatement::execute():執行預處理,成功返回true,失敗返回false
資料繫結:
是指在進行預處理指令定義時使用了佔位符,為了保證後續執行預處理時能夠正確執行,將實際資料替換佔位符的過程
資料繫結的方式應該與佔位符方式對應
pdostatement::execute()方法本身就可以實現資料傳遞和繫結
pdostatement::bindvalue()和bindparam()在實際運用中有明顯區別
PHP PDO介紹與應用
pdo擴充套件為php訪問資料庫定義了乙個輕量級的 一致性的介面,它提供了乙個資料訪問抽象層,這樣,無論使用什麼資料庫,都可以通過一致的函式執行查詢和獲取資料。pdo隨php5.1發行,在php5.0的pecl擴充套件中也可以使用。在windows環境下php5.1以上版本中 pdo和主要資料庫的驅...
robots txt詳細介紹
robots.txt基本介紹 當乙個搜尋機械人 有的叫搜尋蜘蛛 訪問乙個站點時,它會首先檢查該站點根目錄下是否存在robots.txt,如果存在,搜尋機械人就會按照該檔案中的內容來確定訪問的範圍 如果該檔案不存在,那麼搜尋機械人就沿著鏈結抓取。另外,robots.txt必須放置在乙個站點的根目錄下,...
nginx phases 詳細介紹
我們知道,nginx 請求分為下面幾個階段 下面對這些過程詳細介紹 一 ngx http post read phase do nothing 二 ngx http server rewrite phase do nothing 三 ngx http find config phase 根據請求的位...