2011-01-14 25 views
8

Estoy empezando a aprender PHP. Me gustaría usar PHP 5.3 porque es la versión más nueva hasta el momento. Estoy trabajando en un proyecto en el que usaré scripts de PHP 5.2 que alguien me dio.¿PHP 5.3 es compatible con versiones anteriores de PHP 5.2?

¿Van a funcionar muy bien a pesar de que estoy usando PHP 5.3?

+8

http://www.php.net/manual/en/migration53.php debería tener todo lo que necesita saber. –

Respuesta

10

PHP.net cuenta con un guide para actualizar desde 5.2.x PHP para PHP 5.3. Esto incluye una sección en backwards compatibility.

Desde mi experiencia, la transición 5,2-5,3 fue bastante bien sin problemas. El único problema que tuve con mi aplicación fue asegurarme de que mi configuración de DateTime estuviera configurada en mi php.ini, y filtrar algunas advertencias de depreciación excesivamente agresivas que comenzaron a aparecer.

+1

+1. Transición realmente suave para mí también. Un problema con el que me encontré se describe aquí: http://stackoverflow.com/questions/4673472/php-5-3-and-assigning-the-return-value-of-new-by-reference – mfonda

2

En su mayor parte, versión de versiones menores no van a causarle problemas. Deberías estar bien.

Obviamente, si usted tiene algún problema, usted querrá asegurarse de que tiene error_reporting conjunto para ver todos los errores. PHP: error_reporting

Además, compruebe el manual de cambios en 5.3 desde 5.2: Migrating from PHP 5.2.x to PHP 5.3.x

5

No, 5.3 no es compatible con versiones anteriores, y por supuesto no debe ser visto como una actualización de la versión de menor importancia. Hay una página dedicada a los cambios incompatibles: http://www.php.net/manual/en/migration53.incompatible.php Considere también las funciones que ha diseñado pero que han sido aceptadas en 5.3. Como php no admite la sobrecarga ni la sobreescritura de funciones, se generará un error.

+0

"considera las funciones que tienes diseñado pero aceptado en 5.3 "guau, eso es algo raro/aleatorio que señalar: D pero ¿por qué? – Hannes

+1

En cuanto a por qué lo señalé: lo he encontrado en más de una ocasión tratando de ejecutar aplicaciones antiguas con 5.3. Tuvimos funciones definidas que ahora tienen funciones php-lib (creo que 'date_add' estaba entre ellas), y realmente se rompe. Y un hallazgo y reemplazo global sin duda requiere más esfuerzo de lo que esperaría de una actualización de versión menor. En cuanto a por qué -1, tengo curiosidad también. – Inca

2

Hay algunos problemas menores. El tiempo de paso de la llamada por referencia está en desuso. Hay nuevas palabras reservadas (es decir, goto).

0

php no tiene compatibilidad con versiones anteriores en todas las versiones. A menudo eliminó algunas funciones cuando cambió la versión. El problema ocurre cuando tienes que actualizar el servidor y necesitas cambiar la versión de php, pero algunos scripts de php ya no funcionan con la nueva versión de php. También debe corregir el script php, que es un trabajo más grande. Pero si el script pertenece a otros usuarios en lugar de a los tuyos, no puedes actualizar esos scripts. Esta es una verdadera situación de dolor de cabeza que estoy harto de php y cambiar a Perl en lugar de por razones de compatibilidad con versiones anteriores.

Cuestiones relacionadas