検索

ホームページ  >  に質問  >  本文

クロージャクエリの「自動グローバルインスタンス化」の $query 変数がよくわかりません。

クロージャで依存性注入を使用しないのはなぜですか?たとえば、

function(\think\db\Query $q) {

$q->where('sex', 0)->where('salary', ' > ', '8000');

}

tp5.1 では、このようにして正常に実行できます。


土豆土豆2441日前1039

全員に返信(3)返信します

  • 亚连

    亚连2018-06-08 09:42:19

    これは匿名関数であり、クロージャではありません

    返事
    1
  • 土豆

    PHPマニュアル、無名関数の定義、 最初の文「匿名関数、クロージャとも呼ばれます (匿名関数、クロージャとも呼ばれます)」 マニュアルのアドレス: http://php.net/manual/en/functions.anonymous.php jsでのクロージャの定義は「別の関数のスコープ内の変数にアクセスできる関数」であることは知っていますが、phpではクロージャは匿名関数と同じもののようです。

    土豆 · 2018-06-08 13:22:45
    亚连

    理論的には、クロージャと匿名性は異なる概念ですが、PHP では匿名性がクロージャであり、クロージャが匿名性であると考えられます。この記事は http://www.php.cn/php-weizijiaocheng-401974.html で読むことができます。

    亚连 · 2018-06-08 15:36:17
  • キャンセル返事