前回は、ThinkPHP クラスの自動ロードについて説明しましたが、よく知らない場合は、以下のリンクを参照して確認してください。この記事では、ThinkPHP 構成ファイルの解釈について説明します。
ファイル thinkphp/library/think/Config.php
で、クラス Config はインターフェイス ArrayAccess
を実装します。
この時点で、このクラスが何をするのか、なぜそれを理解して学習する必要があるのかについて質問がありますか。この質問を念頭に置いて、答えを探っていきましょう。
このインターフェースにアクセスして確認してください。
このインターフェイスには、実装する必要があるインターフェイスが 4 つあります。つまり、オフセット位置が存在するかどうかを検出するための
これらの関数を配置するのは少し混乱しませんか?心配しないでください、ここに答えがあります。
これらのメソッドは Config にも実装されていますが、その中でいくつかのメソッドが使用されています。上記のメソッドの機能の説明によると。
set、has、remove、get などについて考えると、それらの意味がわかります。
次に、このクラスを自分で実装し、このクラスが何に使用されるかを全員に示してみましょう。 ArrayAccessクラスはTPだけでなくlaravelでも広く使われているので、このクラスの機能や考え方をよく学ぶ必要があります。
kaka ディレクトリに TestArrayAccess
ファイルを作成し、ArrayAccess クラスを実装するプロパティを設定する必要があります。
自分で作成したフォルダについてはkaka
なぜ自動ロードが行われるのかについては、前回のクラスの自動ロードで実装しました。
そうでない場合は、まずファイルを extend ディレクトリに配置します。
次に、application/index/controller/Index.php
に移動します。コントローラは、上の図で実装されたメソッドを使用します。
印刷結果offsetGet
を使用して印刷された結果は kaka
何が起こっているかを理解する必要があります。他の 2 つの方法については説明しませんが、すでに理解されていると思います。
つまり、この ArrayAccess クラス は、配列へのアクセスなど、オブジェクトにアクセスするためのインターフェイスを提供します。
学習の継続、ブログの継続、共有の継続は、Kaka が設立以来常に堅持してきた信念です。巨大なインターネット上の Kaka の記事が少しでもお役に立てれば幸いです。カカです、また会いましょう。
以上がThinkPHP で ArrayAccess の使い方を学ぶの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。