ホームページ > バックエンド開発 > PHPチュートリアル > oop - PHP有段写法不懂意思,求指教

oop - PHP有段写法不懂意思,求指教

WBOY
リリース: 2016-06-06 20:41:33
オリジナル
1034 人が閲覧しました

今天看laravel框架代码一个类中有一段代码

<code>public function isLocal()
{
    return $this['env'] == 'local';
}
</code>
ログイン後にコピー
ログイン後にコピー

从来没见过这样的写法$this['env']这样有什么作用?

回复内容:

今天看laravel框架代码一个类中有一段代码

<code>public function isLocal()
{
    return $this['env'] == 'local';
}
</code>
ログイン後にコピー
ログイン後にコピー

从来没见过这样的写法$this['env']这样有什么作用?

Application类继承了Container 类 Container类实现了ArrayAccess,
所以Container的实例是支持数组式访问的: $object['key'];
数组式访问在Container里的实现:https://github.com/laravel/framework/blob/4.2/src/Illuminate/Container/Container.php#L814行到末尾
PHP的数组式访问接口:http://php.net/manual/zh/class.arrayaccess.php

@安正超 为你解答 => http://wenda.golaravel.com/question/5

是不是有一个名为__get的方法譬如:

<code>public function __get($key) {
    return $this->var[$key];
}
</code>
ログイン後にコピー

这是PHP类集合的实现 具体看demo http://blog.sina.com.cn/s/blog_7550abf30101ajda.html

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート