ホームページ  >  記事  >  バックエンド開発  >  关键动态创建的成员变量一个很奇怪的有关问题

关键动态创建的成员变量一个很奇怪的有关问题

WBOY
WBOYオリジナル
2016-06-13 12:04:50945ブラウズ

关键动态创建的成员变量一个很奇怪的问题。

本帖最后由 lytreo650 于 2014-06-20 10:22:34 编辑 用TP做项目,父类中动态的创建了一下成员变量,然后我在子类随意打印类似于这种的东西dump($this->$gfrgrr)竟然可以打印出所有动态创建的成员变量,$gfrgrr是未声明的变量。打印出来的东西是一个大的数组,每个成员变量都是数组的一个元素。再比如动态创建的成员变量中有一个元素是$this->cert,然后我$a = 'cert',在打印$this->$a,依然会打印出所有动态创建的成员变量,请问大家这是为什么?是不是TP的action做了某方面的扩展?因为是公司的项目不方便贴出源码,大家能否给个思路?谢谢!
------解决方案--------------------
父类中动态的创建了一下成员变量  是什么类型,如果是private 就不会输出了。
------解决方案--------------------
未聲明,默認就是public,能調用是正常的。

如果你不想給外部調用,可以寫成protected / private,如果連子類都不能調用。直接用private就好了。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。