ホームページ > PHPフレームワーク > ThinkPHP > thinkphp5モデルメソッドの使い方

thinkphp5モデルメソッドの使い方

藏色散人
リリース: 2022-12-08 10:20:28
オリジナル
1937 人が閲覧しました

thinkphp5 モデルの使用方法: 1. 「User::all(function($query){...}」を通じて複数のレコードをクエリします。 2. 「User::select(function($query)」を使用します。 ){...}" クエリ; 3. find() メソッドと get() メソッドによるクエリ; 4. column() メソッドを使用したデータのクエリ。 #このチュートリアルの動作環境: Windows 7 システム、ThinkPHP バージョン 5、Dell G3 コンピューター

thinkphp5 モデル メソッドの使用方法?thinkphp5モデルメソッドの使い方

Thinkphp5 .0 使用モデル モデル クエリ

#1. 複数のレコードのクエリ##複数のデータを取得するには、select() メソッドと all() メソッドを使用できます。

例 1: all () メソッドを使用します。

        //(1)筛选条件使用闭包函数
        $res = User::all(function($query){
            $query->where('id','>',0)->field('id,name,email');
        });
        foreach($res as $val){
            dump($val->toArray());
        }
        //(2)筛选条件使用where()方法
        $res = User::where('id','>',0)->field('id,name,email')->all();
        //致命错误: Call to undefined method app\index\controller\User::all()
ログイン後にコピー
例 2: select() メソッドを使用します。

        //(1)筛选条件使用where()
        $res = User::where('id','>',0)->field('id,name,email')->select();
        foreach($res as $val){
            dump($val->toArray());
        }
        //(2)筛选条件使用闭包函数
        $res = User::select(function($query){
            $query->where('id','>',0)->field('id,name,email');
        });
        foreach($res as $val){
            dump($val->toArray());
        }
ログイン後にコピー

1. 結果に注目してください。形式:

外側の層 これは配列であり、内側の層には複数のクエリされたオブジェクトが含まれています

toArray() を直接使用することはできず、


2 をトラバースする必要があります。 all() メソッドを使用すると、where や他のメソッドは使用できません。

2. レコードのクエリ

#複数のデータを取得するには、find() を使用できます。メソッドと get() メソッドを使用します。

例 1: find( ) メソッドを使用します。

      //(1)筛选条件使用闭包函数
        $res = User::find(function($query){
            $query->where('name','=','zhang san');
        });
        dump($res->toArray());
        //(2)筛选条件使用where
        $res = User::where('name','=','zhang san')->find();
        dump($res->toArray());
ログイン後にコピー

例 2: get() メソッドを使用します。

        //(1)筛选条件使用闭包函数
        $res = User::get(function($query){
            $query->where('name','=','zhang san');
        });
        dump($res->toArray());
        //(2)错误方式:筛选条件使用where()方法,
        $res = User::where('name','=','zhang san')->get();
        dump($res->toArray());
        //报错:method not exist:think\db\Query->get
        //get()方式只能使用闭包形式。
ログイン後にコピー

3. a をクエリします。 field

value() メソッドを使用します

$email = User::where('name','=','zhang san')->value('email');
dump($email);
ログイン後にコピー

Four 、列データをクエリします

column() メソッドを使用します:

        //获取name字段这一列
        $res = User::where('id','>',0)->column('name');
        dump($res);
        //获取name字段这一列,并且以id字段作为索引
        $res = User::where('id','>',0)->column('id,name');
        dump($res);
        //获取name字段这一列,并且以id字段作为索引
        $res = User::where('id','>',0)->column('name','id');
        dump($res);
        //获取id,name,email字段这三列,并且以id字段作为索引
        $res = User::where('id','>',0)->column('name,email','id');
        dump($res);
ログイン後にコピー

推奨学習: "

thinkPHP ビデオ チュートリアル

"

以上がthinkphp5モデルメソッドの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート