abstrait:一.Medoo的安裝與配置 1.Medoo的安裝 推薦composer安裝 * 在cmd中進(jìn)入項(xiàng)目目錄 輸入 $ composer require catfan/Medoo 即可安裝 &n
一.Medoo的安裝與配置
1.Medoo的安裝 推薦composer安裝
* 在cmd中進(jìn)入項(xiàng)目目錄 輸入 $ composer require catfan/Medoo 即可安裝
* 導(dǎo)入'vendor/autoload.php'; 即可(composer安裝)使用
2.Medoo的配置
*導(dǎo)入文件之后,實(shí)例化一個(gè)Medoo類,將配置參數(shù)傳入
// 如果你使用php的依賴安裝??梢允褂靡韵路椒ㄗ詣?dòng)載入 require __DIR__.'/vendor/autoload.php'; use Medoo\Medoo as Db; //數(shù)據(jù)庫的配置參數(shù) $config = [ //必填 'database_type'=>'mysql', //數(shù)據(jù)庫類型 'database_name'=>'php_edu', //默認(rèn)數(shù)據(jù)庫名稱 'server'=>'127.0.0.1', //默認(rèn)數(shù)據(jù)庫主機(jī)名 'username'=>'root', //默認(rèn)用戶名 'password'=>'root', //用戶密碼 //可選 'charset'=>'utf8', //默認(rèn)字符編碼集 'port'=>3306, //默認(rèn)端口號 ]; //實(shí)例化Medoo類,創(chuàng)建db對象 $db = new Db($config);
二.Medoo的查詢操作(讀)
+ 基本語法: select(表名,字段列表,查詢條件)
+ 字段采用數(shù)組格式,單字段可使用字符串;
+ 查詢條件必須采用數(shù)組格式;
+ 返回為數(shù)組格式
*條件為字段=值的情況
//1.實(shí)例化Medoo框架類 require __DIR__.'/connect.php'; //2.執(zhí)行查詢 $table = 'user'; $fields = ['id','name','age','email']; $where = ['status'=>1]; //返回結(jié)果為數(shù)組 $rows = $db->select($table, $fields, $where); //$table 表名 $fields 要查詢的字段(數(shù)組(多個(gè)字段)或者字符串(一個(gè)字段)) $where查詢條件 //遍歷輸出 foreach ($rows as $value){ echo print_r($value,true).'<hr>'; }
* 條件為大于或者小于等情況 $where = ['age[>]'=>40] //age>40
$table = 'user'; $fields = ['id','name','age','email']; //查詢年齡大于50的用戶 $where = ['age[>]'=>50]; $rows = $db->select($table, $fields, $where);
* 條件為AND 或者OR $where = ['AND'=>['age[>]'=>30,'status'=>1]] //$where = age>30 AND status=1
//查詢年齡小于40,并且性別等于女(1) $where = ['AND'=>['age[<]'=>40,'sex'=>1]]; $rows = $db->select($table, $fields, $where);
三.Medoo寫操作(增,刪,改)
* 返回PDOStatment,預(yù)處理對象,可以用它執(zhí)行更多的操作
1.1添加操作 insert(表名,要添加的數(shù)據(jù))
require __DIR__.'/connect.php'; //2.新增數(shù)據(jù) $table = 'user'; $data['name'] = '美國隊(duì)長'; $data['sex'] = 0; $data['age'] = 98; $data['email'] = 'meiguoduizhang@163.com'; $data['password'] = sha1('123456'); $data['status'] = 1; $data['create_time'] = time(); //3.執(zhí)行添加操作 $stmt = $db->insert($table,$data); //返回一個(gè)PDO預(yù)處理對象
1.2 查看新增主鍵 $db->id() $db Medoo對象
echo '新增主鍵id'.$db->id().'<hr>';
1.3 查看一下生成SQL語句 $stmt->queryString (屬性)
echo 'SQL語句:' .$stmt->queryString.'<hr>';
--------------------------------------------------------------------------------------------------------------------
2.1更新操作 update(表名,要更新的數(shù)據(jù),條件)
//1.實(shí)例化Medoo框架類 require __DIR__.'/connect.php'; //2.表名 $table = 'user'; //要更新的數(shù)據(jù) //$data['name'] = '獵鷹'; //$data['sex'] = 0; $data['age'] = 99; $data['email'] = 'usacaption@163.com'; //$data['password'] = sha1('123456'); //$data['status'] = 1; $data['create_time'] = time(); //更新條件 $where['id'] = 26; //3.執(zhí)行更新 $stmt = $db->update($table,$data,$where); //返回預(yù)處理對象 //查詢更新的記錄條數(shù) if($stmt->rowCount() > 0){ echo '更新成功了'.$stmt->rowCount().'條記錄'; }
2.2更新數(shù)據(jù)自增,自減等等... $data['age[+]'] = 1; //age=age+1
$data['age[+]'] = 1; //age =age+1 $where['id'] = 28; $stmt = $db->update($table,$data,$where);
3.1刪除操作 delete($table,$where) $stmt->rowCount()返回受影響記錄條數(shù)
//1.實(shí)例化Medoo框架類 require __DIR__.'/connect.php'; //2.執(zhí)行刪除 //表名 $table = 'user'; //刪除條件 $where['id'] = 30; $stmt = $db->delete($table,$where); //依舊是預(yù)處理對象 if($stmt->rowCount() > 0){ echo "<script> alert('刪除成功了".$stmt->rowCount()."條記錄')</script>";
Medoo 數(shù)據(jù)庫框架 寫操作都是返回預(yù)處理對象 讀操作返回?cái)?shù)組
Professeur correcteur:天蓬老師Temps de correction:2018-12-05 11:45:28
Résumé du professeur:Medoo 是一個(gè)經(jīng)典的輕量級的數(shù)據(jù)庫模型類,非常方便, 里面的很多設(shè)計(jì)思想,希望對你封裝自己的模型類,有一定的幫助.