简单到无以复加...

1 class A_test {
2 
3 }
4 
5 $obj = new A_test();
6 $objSupplyProp = "abc";
7 $obj->$objSupplyProp = 123;
8 
9 var_dump($obj->$abc);

 

但是动态声明添加成员变量带来一个问题,ide无法有效识别。

那么需要通过注释来解决这个问题:

1 /**
2  * @property type after_obj_name
3  * @property string abc
4  */
5 class A_test {
6 }

ps:

如果在8.x版本中这么使用,可能会报E_DEPRECATED 错误。这是因为在 PHP 8.2 及更高版本中,动态创建类成员变量已被弃用。

 

posted on 2023-12-06 16:34  黑熊一只  阅读(42)  评论(0)    收藏  举报