Yii は習得も使用も簡単です。 PHP とオブジェクト指向プログラミングの知識だけがあれば、新しいアーキテクチャやテンプレート言語を事前に学習する必要がなく、すぐに始めることができます。 Yii を使用した開発は非常に高速で、フレームワーク自体以外のアプリケーション用に記述するコーディングはほとんど必要ありません。実際、これは最も効率的な開発フレームワークの 1 つです。 Yii フレームワークでのデータベースクエリデータの方法についてどのくらい知っていますか?今日は編集者が皆さんに向けてまとめを作成しました。
yii フレームワークでのデータベースクエリデータのメソッドの概要。
(1)
1 | $result =Yii::app()->dbName->createCommand( $sql )->queryRow();
|
ログイン後にコピー
空でない場合、返される結果セットは 1 次元配列です。コード内の dbName はデータ テーブルが配置されているライブラリの名前で、$sql には任意の SQL ステートメントを指定できます。
(2)
1 | $result =Yii::app()->dbName->createCommand( $sql )->queryAll();
|
ログイン後にコピー
空でない場合、返される結果セットは 2 次元配列です。コード内の dbName はデータ テーブルが配置されているライブラリの名前で、$sql には任意の SQL ステートメントを指定できます。
(3)
1 | $result =Region::model()->findByPk( $id );
|
ログイン後にコピー
空でない場合、返される結果はオブジェクトです。コード内のリージョンは、models ディレクトリに保存されている Region.php ファイルを表します。ここでの $id の値は、Region.php で定義された値を表します。主キーが等しい値。
(4)
1 | $result =Region::model()->findAll( $condition , $params );
|
ログイン後にコピー
例:
1 | findAll( "username=:name" , array ( ":name" => $username ));
|
ログイン後にコピー
によって返される結果セットは、空でない場合は 2 次元配列であり、配列の最初の次元の結果セットはオブジェクトです。
(5)
1 | $admin =User::model()->findAllByPk( $postIDs , $condition , $params );
|
ログイン後にコピー
例:
1 | findAllByPk( $id , "name like ':name' and age=:age" , array (':name'=> $name ,'age'=> $age ));
|
ログイン後にコピー
このメソッドは、主キーに基づいてセットをクエリします。返された結果セットが空でない場合、それは 2 次元配列となり、結果の最初の次元になります。配列のセットはオブジェクトです。次のような複数の主キーを使用することもできます: findAllByPk(array(1,2));
(6)
1 | $admin =User::model()->findAllBySql( $sql , $params );
|
ログイン後にコピー
返された結果セットが空でない場合、それは 2 次元配列になり、結果は配列の最初の次元のセットはオブジェクトです。 使用例は次のとおりです:
1 | findAllBySql( "select * from admin where username=:name" , array (':name'=>'admin'));
|
ログイン後にコピー
(7)
1 | $post =Post::model()->findBySql( $sql , $params );
|
ログイン後にコピー
によって返される結果セットは、空でない場合はオブジェクトであり、クエリ結果は最初の部分のみです。データ。例:
1 | findBySql( "select * from user where username=:name" , array (':name'=>'phpernote.com'));
|
ログイン後にコピー
(8)
1 | $row =User::model()->find( $condition , $params );
|
ログイン後にコピー
によって返される結果セットは、空でない場合はオブジェクトであり、クエリ結果はデータの最初の部分のみです。例:
1 | find('username=:name', array (':name'=>'admin'));
|
ログイン後にコピー
または:
1 | find( array ('condition'=>'user_id=:user_id','params'=> array (':user_id'=> $uid )));
|
ログイン後にコピー
(9)
1 | $admin =User::model()->findByAttributes( $attributes , $condition , $params );
|
ログイン後にコピー
このメソッドは、条件に基づいてデータをクエリします。条件は配列に入れられます。例:
1 | findByAttributes( array ('username'=>'admin'));
|
ログイン後にコピー
または:
(10)
1 | $admin =User::model()->findAllByAttributes( $attributes , $condition , $params );
|
ログイン後にコピー
によって返される結果セットは、空でない場合は 2 次元配列であり、結果セットは の最初の次元にあります。配列はオブジェクトです。
(9)
1 2 3 4 5 | $criteria = new CDbCriteria; $criteria ->select='title'; $creteria ->condition='postID=:postID';
$criteria ->params= array (':postID'=>10); $post =Post::model()->find( $criteria );
$post =Post::model()->find( array ( 'select'=>'title', 'condition'=>'postID=:postID', 'params'=> array (':postID'=>10) ));
|
ログイン後にコピー
数値をクエリし、クエリの結果があるかどうかを判断する
1,
1 | $n =Post::model()-> count ( $condition , $params );
|
ログイン後にコピー
このメソッドは、条件に基づいてコレクション内のレコードの数をクエリし、int型の数値を返します。例:
1 | count ( "username=:name" , array ( ":name" => $username ));
|
ログイン後にコピー
2、
1 | $n =Post::model()->countBySql( $sql , $params );
|
ログイン後にコピー
このメソッドは、SQL ステートメントに基づいてコレクション内にレコードがいくつあるかをクエリし、次のような int 型の数値を返します:
1 | countBySql( "select * from admin where username=:name" , array (':name'=>'admin'));
|
ログイン後にコピー
3、
1 | $exists =Post::model()->exists( $condition , $params );
|
ログイン後にコピー
このメソッドは条件に基づいてクエリを実行し、取得された配列はデータが存在しない場合は true を返し、そうでない場合は見つかりません。
上記は、Yii フレームワークでのデータベースクエリデータのメソッドの概要です。これについては皆さんも詳しくご存じだと思いますが、Yii フレームワークに関する関連記事については、PHP 中国語 Web サイトにも注目してください。
関連する推奨事項:
YIIフレームワークでmemcacheを使用する方法の説明
フォームを使用してファイルをアップロードするYii2の例の説明
Yiiフレームワークでの検証コード、ログインおよび終了関数の実装についての説明
PHP—yii フレームワーク キャッシュのナレッジ コレクション
Yii フレームワーク フレームワーク モジュール開発
以上がPHP Yii フレームワークのデータベース クエリ操作の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。