ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp の find と select の違いは何ですか?

thinkphp の find と select の違いは何ですか?

青灯夜游
青灯夜游オリジナル
2021-09-18 12:59:413183ブラウズ

違い: 1. find() は条件を満たす最初のデータを見つけて 1 次元の配列を返しますが、select() は条件を満たすすべてのデータを見つけて 2 次元の配列を返します。次元配列。 2. find() の結果値は「$data["key name"]」を使用し、select() の結果値は「$data[0]["key name"]」を使用します。

thinkphp の find と select の違いは何ですか?

このチュートリアルの動作環境: Windows 7 システム、thinkphp バージョン 5、DELL G3 コンピューター。

thinkphp は、MVC アーキテクチャ管理システムを迅速に開発できる比較的優れた PHP 開発フレームワークです。select() メソッドと find() メソッドを使用する必要があります。どちらのメソッドもデータ セット配列を返すことができますが、違いは何ですか?まず、コードの比較を見てください:

$tech=M('techlevel','HR_CS_','DB_CONFIG2');
$Data=$tech->where('id=1')->find();
dump($Data);
$Data=$tech->where('id=1')->select();
dump($Data);

結果:

array(6) {
  ["ID"] => int(1)
  ["TechLevel"] => string(2) "10"
  ["Remark"] => string(4) "��"
  ["CreateDate"] => string(19) "2013-03-14 15:14:38"
  ["CreateBy"] => string(5) "admin"
  ["ROW_NUMBER"] => string(1) "1"
}

array(1) {
  [0] => array(6) {
    ["ID"] => int(1)
    ["TechLevel"] => string(2) "10"
    ["Remark"] => string(4) "��"
    ["CreateDate"] => string(19) "2013-03-14 15:14:38"
    ["CreateBy"] => string(5) "admin"
    ["ROW_NUMBER"] => string(1) "1"
  }
}

上記のコードからわかるように、find() は 1 次元配列を返し、select() は返します。 2次元配列です。そのため値に違いがあります。1次元配列の場合は$data["TechLevel"]が使用され、2次元配列の場合は$data[0]["TechLevel"]が使用されます。最初はこの使い方が理解できなかったので、デバッグに 1 日かかりましたが、その甲斐もありません。最後に、dump メソッドを使用して、2 つのメソッドの違いを確認します。

[関連チュートリアルの推奨事項: thinkphp フレームワーク]

以上がthinkphp の find と select の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。