Mudanças incompatíveis entre PHP5.6 e PHP7

image_pdfimage_print

O acesso indireto a variáveis, propriedades e métodos agora será avaliado estritamente na ordem da esquerda para a direita, em oposição à combinação anterior de casos especiais. A tabela abaixo mostra como a ordem de avaliação mudou.

O código que usou a antiga ordem de avaliação de direita para esquerda deve ser reescrito para usar explicitamente essa ordem de avaliação com chaves curvas (veja a coluna do meio abaixo). Isso tornará o código compatível com o PHP 7.x e compatível com o PHP 5.x.

                          // <=PHP5.6              // >= PHP7
$$foo['bar']['baz']     ${$foo['bar']['baz']}     ($$foo)['bar']['baz']
$foo->$bar['baz']       $foo->{$bar['baz']}       ($foo->$bar)['baz']
$foo->$bar['baz']()     $foo->{$bar['baz']}()     ($foo->$bar)['baz']()
Foo::$bar['baz']()      Foo::{$bar['baz']}()      (Foo::$bar)['baz']()
Gostou? Tire um minutinho e dê sua contribuição para Drall Dev Community no Patreon!