我正在处理旧的遗留代码,并检查它是否与PHP7一起运行。我得到了一个例外(Array to string conversion
),其中包含以下代码:
json_decode($json_string)
->$array['id']
->foo
使用大括号有什么帮助:
json_decode($json_string)
->{$array['id']}
->foo
我的问题是,PHP5已经错了,如果没有,那么改变的原因是什么?找不到任何东西,因为不知道要搜索什么...我有一个想法是新引入的AST会产生这种行为吗?
答案 0 :(得分:0)
我认为你是对的。从我在PHP5中所知道的,没有任何异常,但PHP 7想要更严格一点,因为这样的情况可能会在未正确使用后导致很多大问题。