ホームページ  >  記事  >  バックエンド開発  >  thinkphp3.2.3 バージョンの Upload クラスについて質問がありますか?

thinkphp3.2.3 バージョンの Upload クラスについて質問がありますか?

WBOY
WBOYオリジナル
2016-08-04 09:22:051117ブラウズ

リーリー

このクラスは初期化中にすべての設定をこの配列属性に置きますが、公式ドキュメントを読むと、次のようなクラス属性を呼び出すことでこれらの設定を設定できます。 リーリー

これを見てもわかりません。論理的に言えば、この maxSize は config 配列属性の単なる添え字です。どうすれば $upload->config['maxSize'] のように割り当てることができます。属性? ?

返信内容:

リーリー

このクラスは初期化中にすべての設定をこの配列属性に入れますが、公式ドキュメントを読むと、次のようなクラス属性を呼び出すことでこれらの設定を設定できます。 リーリー

これを見てもわかりません。論理的に言えば、この maxSize は config 配列属性の単なる添字です。どうすれば $upload->config['maxSize'] のように割り当てることができます。属性? ?

アクセスできないプロパティに値を割り当てるときにマジックメソッド __set()、__set() が呼び出されます。

クラス内の __set() メソッドを見てください...

リーリー

見てください、これら 2 つの魔法のメソッドはクラス属性へのアクセスと操作を再実装しています

このように、クラス属性 $config は配列であるように見えますが、実際にはクラス属性 $config の各要素は配列型です。それぞれの KEY はクラス属性名として使用され、VALUE はクラス属性値として使用されます。


これら 2 つの魔法のメソッドを書き直さない場合は、別の方法で書くと一目瞭然になるかもしれません:

リーリー

これには $driverConfig クラス属性の特殊性も関係しますが、これについては別途説明します。それはあなたの質問の範囲外だからです。

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