列舉了幾個常用的查詢進行簡單封裝,雖然系統也有內置的但是很多人不大會就二次封裝簡化了一下。
?**這里只封裝了一個條件 多個條件的自己再封裝或者用標簽解決比較好 這里只是說fun可以萬能調用**
## 1**獲取任意表的某個字段的值**
我要查詢一個內容的字段值怎么查?~~~
fun('wanneng@get_value',2,'cms_content1','picurl')
~~~
查詢cms中id 為2的picurl 字段 直接返回這個內容的圖片
~~~
fun('wanneng@get_value',2,'cms_content1','view');
~~~
直接返回他的瀏覽量
可以看出,只要最后一項是數據庫中的字段即可返回對應的值,沒有多余的查詢。
那么極限要求下 返回UID為1的一個內容標題怎么辦?(這里僅作為示例 一般不這么查詢 一般是查詢唯一索引)
~~~
fun('wanneng@get_value',1,'cms_content1','title','uid');
~~~
這樣我們就返回了 uid為1的第一條數據的標題 其他字段的值只需要更改 title 即可
條件只需要變更 uid 就可以了。
~~~
fun('wanneng@get_value',20,'cms_content1','title','fid');
~~~
這就是返回fid等于20的一個數據的標題
## 2**某個條件下的全部字段值**
上面的只能返回一個值,那么有時候我們需要很多值的時候就不適合了
[https://x1.php168.com/bbs/show-12541.html](https://x1.php168.com/bbs/show-12541.html)
這里有按id查詢的 已經可以滿足99.9%的需求了。這里也是順便封裝了一下基本是一樣的。
那么這里也可以返回全部的值
~~~
fun('wanneng@get_find',2,'cms_content1');
~~~
這是返回id為2的全部字段值 返回的是一個數組?
極限情況下,我不是按id查詢能返回碼 答案是可以的
~~~
fun('wanneng@get_find',20,'cms_content1','fid');
~~~
我們返回fid等于20的一條數據?
可以看出,這個查詢 第一項是值 第二項是 數據表 第三項是查詢字段 可以為空默認為id
## 4**任意數據表中的全部列**
我想獲取一個用戶下全部的信息怎么查詢?上面的都是只能查詢一條 下面的辦法可以查詢全部數據。
~~~
fun('wanneng@get_select',1,'cms_content1','uid');
~~~
這就是查詢uid為1的全部數據
我想查詢fid為20的全部數據
~~~
fun('wanneng@get_select',20,'cms_content1');
~~~
可以看出 第一項是查詢條件的值 第二個是數據表 第三項是查詢的條件 默認為fid可以不寫
## 5**任意數據表中某一列的值**
上面的查詢已經可以滿足很多場景了,再極限的情況下 我想調用一個條件下的某列值 但是我又不想用select
那么也是可以的,這個調用稍微比較復雜一點點,但是使用場景還是比較多的 主要用到是單選 下拉等等
~~~
fun('wanneng@get_column',105,'cms_content1','id,uid,title','view');
~~~
調用 瀏覽量為105的全部數據,返回的是一個數組 他的鍵也就是索引就是我們返回信息的主鍵id值。
第一項為查詢的值 第二項為數據庫名**第三項為我們返回的列的字段名 第一個必須為主鍵索引**第三項為查詢的字段名
~~~
fun('wanneng@get_column',20,'cms_content1','id,uid,title','fid');
~~~
這些模板都可以用,模板怎么用這里不再普及教學了,上面的這些只是封裝示例,自己可以封裝為自己喜歡的類型 當然了封裝也沒啥意義只是使用起來方便一點點。
使用方法?application\common\fun 建立 Wanneng.php
~~~
~~~
<?php
namespace?app\common\fun;
use?think\Db;
/**
?*?萬能數據表調用
?*?Class?Wanneng
?*/
class?Wanneng{
???/**
????*?任意數據表中的一個字段值??fun('wanneng@get_value',2,'cms_content1','picurl')
????*?查詢cms中?id為2的標題
????*?$value=fun('wanneng@get_value',2,'cms_content1','title');
????*?查詢cms中?id?為2的瀏覽量
????*?$value=fun('wanneng@get_value',2,'cms_content1','view');
????*?查詢cms中?fid?為20的一個內容標題
????*?$value=fun('wanneng@get_value',20,'cms_content1','title','fid');
????*?@param?$id?查詢的值
????*?@param?$table?查詢的表
????*?@param?string?$type?查詢的條件?默認為id?和查詢的值是相關的
????*?@param?$name?返回的字段值?默認為title
????*?@return?mixed?查詢存在直接返回值?不存在返回?null
????*/
???public?function?get_value($id,$table,$name='title',$type="id"){
??????$map=[];
??????$map[$type]=$id;
??????$value=Db::name($table)->where($map)->value($name);
??????return?$value;
???}
???/**
????*?任意數據表中的全部字段值
????*?查詢cms中?id為2的全部信息
????*?$value=fun('wanneng@get_find',2,'cms_content1');
????*?查詢fid為20的一條數據?這個數據是第一條發布的
????*?$value=fun('wanneng@get_find',20,'cms_content1','fid');
????*?@param?$id?查詢的值
????*?@param?$table?查詢的表
????*?@param?string?$type?查詢值的條件
????*?@return?返回查詢字段的全部值?結果不存在返回null
????*/
???public?function?get_find($id,$table,$type="id"){
??????$map=[];
??????$map[$type]=$id;
??????$find=Db::name($table)->where($map)->find();
??????return?$find;
???}
???/**
????*?任意數據表中的全部列
????*?查詢cms中?uid為1的全部信息
????*?$value=fun('wanneng@get_select',1,'cms_content1','uid');
????*?查詢fid為20的全部數據
????*?$value=fun('wanneng@get_select',20,'cms_content1');
????*?@param?$id?查詢的值
????*?@param?$table?查詢的表
????*?@param?string?$type?查詢值的條件
????*?@return?返回全部數據的數組?為空返回空數據
????*/
???public?function?get_select($id,$table,$type="fid"){
??????$select=[];
??????$map=[];
??????$map[$type]=$id;
??????$select=Db::name($table)->where($map)->select();
??????return?$select;
???}
???/**
????*?任意數據表中某一列的值
????*?查詢cms中?瀏覽量為105的uid?id?title
????*?$value=fun('wanneng@get_column',105,'cms_content1','id,uid,title','view');
????*?@param?$id?查詢的值
????*?@param?$table?查詢的表
????*?@param?string?$name?查詢的字段?可以為多個?用,隔開?例如:id,title,picurl?第一項必須為主鍵索引
????*?@param?string?$type?查詢的條件
????*?@return?mixed
????*/
???public?function?get_column($id,$table,$name='title',$type="id"){
??????$map=[];
??????$map[$type]=$id;
??????$column=Db::name($table)->where($map)->column($name);
??????return?$column;
???}
}
~~~
~~~
- 空白目錄
- 平日使用的小應用,小技巧.
- 小技巧,二級域名綁定
- 需要的按年月日發帖量和點擊排序的使用
- 每周賺取的積分排行使用
- 齊博x1第三季《模板風格的制作》系列
- 導航的高亮處理
- Default下index中的模板分析
- 005-新建一個空模板并在后臺選擇
- 008-模板頁面之間的繼承
- 010-對比系統布局模板添加一些必要代碼
- 015-欄目的調用3
- 017-欄目的調用5
- 019-模塊的路徑訪問
- 002-前臺模板index_style目錄的分析
- 004-風格樣式資源目錄public/static
- 006-增加一個布局模板layout
- 007-用{block}標記來分割布局模板
- 011-加一個導航把系統后臺的菜單調出
- 013-欄目的調用1
- 014-欄目的調用2
- 016-欄目的調用4
- 018-欄目的終極方法get_sort
- 020-插件的路徑訪問
- 神盾工具箱007-標簽云
- 標簽云上線啦
- 云標簽(更新版本1.2)
- 云標簽(更新版本1.3)
- 標簽云(更新1.4)
- 標簽云(更新1.8)
- 標簽云(更新3.0)
- 標簽云(更新3.1)
- 標簽云(更新3.3)
- 齊博x1第一季《新手入門》系列
- 001-下載安裝x1
- 002-認識齊博x1的后臺
- 003-系統設置之基本設置
- 004-系統設置之會員注冊
- 005-系統設置之郵箱接口設置
- 006-系統設置之水印設置
- 007-系統設置之聯系方式
- 008-系統設置之短信接口
- 009-系統設置之登錄接口
- 010-系統設置之其它設置
- 011-數據庫工具
- 012-會員管理
- 013-模塊的簡單說明
- 014-偽靜態的相關設置
- 齊博x1第二季《基本數據操作》系列
- 001-標簽的使用
- 002-標簽的使用
- 003系統參數的調用
- 004-列表頁的內置變量
- 005-內容頁的內置變量
- 齊博X1《實用技巧》
- 任意頁調用用戶的收藏列表
- 巧用字段后面js屬性來獲取表單內容
- 給標題欄加個按鈕,點擊獲取內容里文字截取一段做標題
- 簡單的模塊制作說明---初級
- V系列轉換程序重新起航 支持v全系列轉X系列(v7轉換支持添加到搜索)
- 簡單插件制作流程---友情鏈接解說版
- 鉤子簡單制作-tag加連接解說版
- 織夢轉X1程序
- 簡單的模塊制作說明---進階篇(更新中)
- 模型字段內容頁面調用小技巧
- 水平凡、lvyecms轉X1
- fun 函數 來個拋磚引玉 最簡單的分類信息顯示手機號歸屬地
- 再來個拋磚引玉 內容頁根據關鍵詞調用相關內容 新功能哦!
- 序列號使用圖文教程
- OSS有巨大的優惠活動 特此開啟一篇免流量教程帖
- 搜索結果調用其他字段的辦法
- 關于安裝七牛、騰訊、OSS等云儲存無法上傳提示沒參數的解答(必看)
- 鑒于很多人問列表的篩選怎么放到首頁、內容頁等等地方 貼出方法
- 下面根據運營經驗給大家講下服務器一般配置
- 一段不錯的小js提高一點點閱讀體驗 計算本文閱讀所需的時長
- 自定義時間插件更新了!新增編輯的時候自定義時間(已經安裝過的請看修改教程
- 制作好的應用導出上架教程
- 支付插件卸載后無法重新安裝的解決辦法
- 任意位置調用萬能表單的方法 順便借樓說下purl的作用
- 新版圈子店鋪類實例和詳細接口教程附模板文件
- 新版圈子專題類的數據教程
- 滑動門+下滑加載更多詳細圖解
- 使用寶塔面板php7.3的用戶如果無法安裝應用的解決辦法
- V系列如果發現被黑的排查方法附修復辦法
- 電腦版直播OBS Studio簡單教程
- 站內引用添加到編輯器后在編輯器顯示錯亂?一招告訴你怎么解決
- linux 寶塔面板安裝rtmp簡陋教程 (已加視頻版教程)
- 內容頁上傳MP3加載播放器簡單教程
- 免費的導播臺Mshow簡單的使用攻略
- 萬能fun 調用任意數據表 任意字段就是這么任性調用
- bui框架前端自定義配色基礎屬性
- 關于自定義時間或者其他鉤子安裝后無效的一個解決辦法
- 網站后臺上傳的logo圖丟失的一個排除解決辦法
- 插件如何做前臺風格切換的功能詳解
- 齊博X1--標簽變量大全
- 齊博X1--應用實例收集
- 嵌套-循環欄目,并列出子欄目下的內容
- 齊博X1--+關注,私信,TA的圈子
- 齊博X1--欄目多圖字段的循環調用
- 任意位置調用當前用戶提交的表單
- 循環欄目并調用欄目信息內容
- 頭部底部菜單高亮設置
- 萬能表單
- 全站調用驗證碼
- 萬能導出excel數據教程
- 如何重新模塊索引