《PHP實例:PHP開發框架Laravel數據庫操作方法總結》要點:
本文介紹了PHP實例:PHP開發框架Laravel數據庫操作方法總結,希望對您有用。如果有疑問,可以聯系我們。
PHP編程一、讀/寫連接
PHP編程有時您可能希望使用一個SELECT語句的數據庫連接,,另一個用于插入、更新和刪除語句.Laravel使這微風,將始終使用正確的連接是否使用原始查詢,查詢生成器或雄辯的ORM.
PHP編程如何讀/寫連接應該配置,讓我們看看這個例子:
代碼如下:
'mysql' => array('read' => array('host' => '192.168.1.1'),'write' => array('host' => '196.168.1.2'),'driver' => 'mysql','database' =>'database','username' => 'root','password' => '','charset' => 'utf8','collation' => 'utf8_unicode_ci','prefix' => '')
PHP編程注意,兩個鍵添加到配置陣列:讀和寫.這兩個鍵有數組值包含一個關鍵:主機.其余的讀寫數據庫選項從主mysql連接將合并后的數組.所以,我們只需要將物品放入讀取和寫入數組如果我們希望覆蓋主要數組中的值.所以,在這種情況下,192.168.1.1將被用作“讀”連接,while192.168.1.2將被用作“寫”連接.數據庫憑證、前綴、字符集和所有其他選項在主mysql數組將跨兩個共享連接.
PHP編程二、運行查詢
PHP編程一旦你已經配置了數據庫連接,你可以使用DB運行查詢類.
PHP編程運行一個Select查詢
代碼如下:
$results = DB::select('select * from users where id = ?', array(1));
結果的選擇辦法總是返回一個數組.
PHP編程運行一個Insert語句
代碼如下:
DB::insert('insert into users (id, name) values (?, ?)', array(1, 'Dayle'));
PHP編程運行一個更新語句
代碼如下:
DB::update('update users set votes = 100 where name = ?', array('John'));
運行一個Delete語句
代碼如下:
DB::delete('delete from users');
PHP編程注意:update和delete語句返回的行數的影響操作.
PHP編程運行一個通用聲明
代碼如下:
DB::statement('drop table users');
PHP編程查詢事件監聽
PHP編程你可以查詢事件監聽使用DB::聽辦法:
代碼如下:
DB::listen(function($sql, $bindings, $time){ //});
PHP編程三、數據庫事務
PHP編程 運行在一個數據庫事務的一組操作,您可以使用事務辦法:
代碼如下:
DB::transaction(function(){ DB::table('users')->update(array('votes'
=> 1)); DB::table('posts')->delete();});
注意:在事務拋出的任何異常關閉將導致自動事務將回滾
PHP編程有時你可能需要開始一個事務:
代碼如下:
DB::beginTransaction();
你可以通過回滾事務回滾方法:
代碼如下:
DB::rollback();
最后,您可以通過提交方法:提交一個事務
代碼如下:
DB::commit();
PHP編程四、拜訪連接
PHP編程當使用多個連接,你可以拜訪它們通過DB::連接方法:
代碼如下:
$users = DB::connection('foo')->select(...);
你也可以拜訪原始的、潛在的PDO實例:
代碼如下:
$pdo = DB::connection()->getPdo();
有時你可能需要重新連接到一個給定的數據庫:
代碼如下:
DB::reconnect('foo');
如果你需要斷開從給定的數據庫將超過底層PDO實例'smax_connections限制,使用斷開連接方法:
代碼如下:
DB::disconnect('foo');
PHP編程五、查詢日志
PHP編程默認情況下,Laravel日志保存在內存的所有查詢運行當前的哀求.然而,在某些情況下,例如當插入的行數,這可能會導致應用程序使用多余的內存.禁用日志,你可以使用disableQueryLog方法:
代碼如下:
DB::connection()->disableQueryLog();
o得到一組執行的查詢,您可以使用getQueryLog辦法:
代碼如下:
$queries = DB::getQueryLog();
維易PHP培訓學院每天發布《PHP實例:PHP開發框架Laravel數據庫操作方法總結》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.fzlkiss.com/jiaocheng/14761.html