我试图使用数组中$this->$arrDataName[$key]的键访问元素.但PHP解释错误.$key$this->$arrDataName
我试了一下{ }周围的$arrDataName到$this->{$arrDataName}[$key],但它不工作.
在php.net上我找到了一个建议,但我无法实现.
为了将变量变量与数组一起使用,您必须解决模糊问题.也就是说,如果你写$$ a [1],那么解析器需要知道你是否想要使用$ a [1]作为变量,或者你想要将$$作为变量,然后是[1]索引来自那个变量.解决这种歧义的语法是:第一种情况为$ {$ a [1]},第二种情况为$ {$ a} [1].
也许任何人都可以帮助我.
谢谢!
编辑:
我认为它不起作用,但我忘了填充数组.
最后它有效.:)
这是解决方案:$this->{$arrDataName}[$key]
你的语法是正确的:
$this->{$varName}[$key]
Run Code Online (Sandbox Code Playgroud)
您还可以使用额外的变量:
$myTempArr = $this->$arrDataName;
$myTempArr[ $key ];
Run Code Online (Sandbox Code Playgroud)
恕我直言,可读性更好......
| 归档时间: |
|
| 查看次数: |
2019 次 |
| 最近记录: |