当属性名称具有不允许的字符时访问PHP对象属性

Nan*_*nds 2 php oop

我需要访问我指定为变量的php对象属性.

$ phpObj - > $属性

这个$属性可能包含像破折号( - ),引号,百分比,甚至空白等字符.PHP不允许将这些字符用作变量名,导致我无法访问这些属性.

处理这个问题会有什么好处?我打开将$属性首先编码为字母数字,然后将其用作属性变量,但这种编码对于特定字符串应该是唯一的.

例如,我想确保$ phpObj-> First-Prop和$ phpObj-> first-prop应该以不同方式识别.

Pet*_*ter 5

$propertyName = 'property-name';

$phpObj->{$propertyName} = ...
$phpObj->{"property-name"} = ...
Run Code Online (Sandbox Code Playgroud)

只有这可能是问题:

$phpObj->First-Prop and $phpObj->first-prop 
Run Code Online (Sandbox Code Playgroud)

php中的变量/函数/方法/属性定义不区分大小写...