Los únicos errores que pueden ocurrir serán debido a los códigos utilizados en los eventos, bibliotecas y métodos que no sean compatibles con PHP 7.0. Estos errores se deben corregir manualmente.
1 - Short open tags
La directiva short_open_tag informa a PHP si la forma abreviada (<? ?>) De la etiqueta de apertura de PHP está permitida.
Independiente de la versión del php, se debe chequear en php.ini si el short_open_tag está habilitado.
Solución 1:
Cambiar la etiqueta de apertura de php(<?php ?>)
Solución 2:
Cambiar la directiva short_open_tags en php.ini:
short_open_tags = On
2 - Nuevos objetos no se pueden asignar por referencia
<?php
class C {}
$c =& new C;
?>
El ejemplo anterior se imprime para PHP 5:
Deprecated: Assigning the return value of new by reference is deprecated in /tmp/test.php on line 3
El ejemplo de arriba se imprime para PHP7:
Parse error: syntax error, unexpected 'new' (T_NEW) in /tmp/test.php on line 3
Solución:
Retirar la referencia (&) de los atributos:
<?php
class C {}
$c = new C;
?>
3 -Constructores al estilo PHP 4
Los constructores al estilo PHP 4 (métodos que tienen el mismo nombre que la clase donde están definidos) están obsoletos, y serán eliminados en el futuro. El PHP 7 enviará E_DEPRECATED
si un constructor de PHP 4 es el único constructor definido en la clase. Las clases que implementan el método __construct () no se ven afectadas.
<?php
class foo {
function foo() {
echo 'Eu sou um construtor';
}
}
?>
El ejemplo de arriba se imprimirá:
Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; foo has a deprecated constructor in example.php on line 3
4 -Llamadas estáticas a métodos no estáticos
Las llamadas estáticas a métodos que no se han declarado como static están obsoletas, y se pueden quitar en el futuro.
<?php
class foo {
function bar() {
echo 'Eu não sou estático!';
}
}
foo::bar();
?>
El ejemplo de arriba se imprimirá:
Deprecated: Non-static method foo::bar() should not be called statically in - on line 8
I am not static!
Para más información:
- Nuevos Recursos de PHP 7.0
- Recursos obsoletas para PHP 7.0
Fuente: http://php.net