校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁(yè) > 知識(shí)庫(kù) > tp5.1 框架數(shù)據(jù)庫(kù)-數(shù)據(jù)集操作實(shí)例分析

tp5.1 框架數(shù)據(jù)庫(kù)-數(shù)據(jù)集操作實(shí)例分析

熱門標(biāo)簽:梧州市機(jī)器人外呼系統(tǒng)怎么樣 臨沂crm外呼系統(tǒng)平臺(tái) 天客通地圖標(biāo)注 菏澤語(yǔ)音外呼系統(tǒng)運(yùn)營(yíng)商 如何在世界地圖標(biāo)注 公司外呼系統(tǒng)中心 地圖標(biāo)注符號(hào)樣式有 電子地圖標(biāo)注怎么修改 廈門400電話辦理選易號(hào)網(wǎng)

本文實(shí)例講述了tp5.1 框架數(shù)據(jù)庫(kù)-數(shù)據(jù)集操作。分享給大家供大家參考,具體如下:

數(shù)據(jù)庫(kù)的查詢結(jié)果也就是數(shù)據(jù)集,默認(rèn)的配置下,數(shù)據(jù)集的類型是一個(gè)二維數(shù)組,我們可以配置成數(shù)據(jù)集類,就可以支持對(duì)數(shù)據(jù)集更多的對(duì)象化操作,需要使用數(shù)據(jù)集類功能,可以配置數(shù)據(jù)庫(kù)的resultset_type參數(shù)如下:

return [
  // 數(shù)據(jù)庫(kù)類型
  'type'    => 'mysql',
  // 數(shù)據(jù)庫(kù)連接DSN配置
  'dsn'     => '',
  // 服務(wù)器地址
  'hostname'  => '127.0.0.1',
  // 數(shù)據(jù)庫(kù)名
  'database'  => 'thinkphp',
  // 數(shù)據(jù)庫(kù)用戶名
  'username'  => 'root',
  // 數(shù)據(jù)庫(kù)密碼
  'password'  => '',
  // 數(shù)據(jù)庫(kù)連接端口
  'hostport'  => '',
  // 數(shù)據(jù)庫(kù)連接參數(shù)
  'params'   => [],
  // 數(shù)據(jù)庫(kù)編碼默認(rèn)采用utf8
  'charset'   => 'utf8',
  // 數(shù)據(jù)庫(kù)表前綴
  'prefix'   => 'think_',
  // 數(shù)據(jù)集返回類型
  'resultset_type' => 'collection',
];

返回的數(shù)據(jù)集對(duì)象是think\Collection,提供了和數(shù)組無差別用法,并且另外封裝了一些額外的方法。

在模型中進(jìn)行數(shù)據(jù)集查詢,全部返回?cái)?shù)據(jù)集對(duì)象,但使用的是think\model\Collection類,但用法是一致的。

可以直接使用數(shù)組的方式操作數(shù)據(jù)集對(duì)象,例如:

// 獲取數(shù)據(jù)集
$users = Db::name('user')->select();
// 直接操作第一個(gè)元素
$item = $users[0];
// 獲取數(shù)據(jù)集記錄數(shù)
$count = count($users);
// 遍歷數(shù)據(jù)集
foreach($users as $user){
  echo $user['name'];
  echo $user['id'];
}

V5.1.23+版本開始,你可以在查詢的時(shí)候指定是否需要返回?cái)?shù)據(jù)集(無需配置resultset_type參數(shù))

// 獲取數(shù)據(jù)集
$users = Db::name('user')->fetchCollection()->select();
// 直接操作第一個(gè)元素
$item = $users[0];
// 獲取數(shù)據(jù)集記錄數(shù)
$count = count($users);
// 遍歷數(shù)據(jù)集
foreach($users as $user){
  echo $user['name'];
  echo $user['id'];
}

V5.1.24+版本開始,fetchCollection方法支持傳入使用的集合類名稱。

需要注意的是,如果要判斷數(shù)據(jù)集是否為空,不能直接使用empty判斷,而必須使用數(shù)據(jù)集對(duì)象的isEmpty方法判斷,例如:

$users = Db::name('user')->select();
if($users->isEmpty()){
  echo '數(shù)據(jù)集為空';
}

Collection類包含了下列主要方法:

方法 描述
isEmpty 是否為空
toArray 轉(zhuǎn)換為數(shù)組
all 所有數(shù)據(jù)
merge 合并其它數(shù)據(jù)
diff 比較數(shù)組,返回差集
flip 交換數(shù)據(jù)中的鍵和值
intersect 比較數(shù)組,返回交集
keys 返回?cái)?shù)據(jù)中的所有鍵名
pop 刪除數(shù)據(jù)中的最后一個(gè)元素
shift 刪除數(shù)據(jù)中的第一個(gè)元素
unshift 在數(shù)據(jù)開頭插入一個(gè)元素
reduce 通過使用用戶自定義函數(shù),以字符串返回?cái)?shù)組
reverse 數(shù)據(jù)倒序重排
chunk 數(shù)據(jù)分隔為多個(gè)數(shù)據(jù)塊
each 給數(shù)據(jù)的每個(gè)元素執(zhí)行回調(diào)
filter 用回調(diào)函數(shù)過濾數(shù)據(jù)中的元素
column 返回?cái)?shù)據(jù)中的指定列
sort 對(duì)數(shù)據(jù)排序
shuffle 將數(shù)據(jù)打亂
slice 截取數(shù)據(jù)中的一部分

 

更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。

希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。

您可能感興趣的文章:
  • PHP tp5中使用原生sql查詢代碼實(shí)例
  • tp5.1 框架路由操作-URL生成實(shí)例分析
  • tp5.1 框架join方法用法實(shí)例分析
  • tp5.1框架數(shù)據(jù)庫(kù)子查詢操作實(shí)例分析
  • tp5.1 框架數(shù)據(jù)庫(kù)常見操作詳解【添加、刪除、更新、查詢】
  • TP5多入口設(shè)置實(shí)例講解

標(biāo)簽:瀘州 白城 郴州 綿陽(yáng) 雞西 迪慶 黃石 貴陽(yáng)

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《tp5.1 框架數(shù)據(jù)庫(kù)-數(shù)據(jù)集操作實(shí)例分析》,本文關(guān)鍵詞  tp5.1,框架,數(shù)據(jù)庫(kù),數(shù)據(jù),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《tp5.1 框架數(shù)據(jù)庫(kù)-數(shù)據(jù)集操作實(shí)例分析》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于tp5.1 框架數(shù)據(jù)庫(kù)-數(shù)據(jù)集操作實(shí)例分析的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 凌海市| 建始县| 资溪县| 贞丰县| 阿拉尔市| 张家港市| 周口市| 蒲江县| 贺兰县| 阿鲁科尔沁旗| 那曲县| 湄潭县| 阿坝| 桂东县| 廊坊市| 元阳县| 玉林市| 万州区| 故城县| 新沂市| 山丹县| 巴林左旗| 泰兴市| 遵义市| 普格县| 高尔夫| 措勤县| 罗源县| 夏河县| 保山市| 东丽区| 濮阳县| 莱州市| 临沂市| 红安县| 柳州市| 澳门| 光山县| 临桂县| 修武县| 克拉玛依市|