Jorge Fuertes

Consultor de sistemas infomáticos.
Administración de sistemas, desarrollo.

¿PHP 5.x para rato?

PHP5 es una gran tecnología. Funciona muy bien, es muy rápido, más que muchos que aseguran serlo, y tiene una completa implementación de objetos bastante fácil de manejar y sin molestar a quién sólo quiere programar unos scripts de forma procedural.

Todavía se ha liberado hace poco, en junio, la versión 5.3 de este popular lenguaje. Esta versión incuye algunas cosas que estaban previstas para la 6, como los namespaces, lo que me hace pensar que la versión 6 va a tardar un tiempo.

Según leo en tecnoretales, Zeev Suraski ha declarado que pasará bastante tiempo antes de que sea lanzada la versión 6. Sin embargo creo que es muy interesante que vayamos conociendo cuales son las novedades en las que están trabajando para dicha versión:

  • Unicode: Todo el código será unicode, no opcional como en PHP5. En 5, la activación de unicode consume recursos al duplicar las variables, en 6 sólo estarán en unicode.
  • Proscritas las variables globales: Se acabó registrar variables globales. En 5.3 ya estaba “deprecated“, y siempre han sido un problema de seguridad en mano de programadores novatos o relajados.
  • Magic Quotes: Se eliminan totalmente. Ya sobraban.
  • Safe mode: Se elimina el modo seguro ya que daba una falsa idea acerca de la seguridad. Todos los que hemos trabajado en servicios de hosting lo habíamos utilizado alguna vez, pero al final acabábamos por desconectarlo y utilizar open_basedir para limitar el escalado de directorios, y esta directiva va a seguir existiendo.
  • var y public pasan a significar lo mismo: Ya era así pero se generaba un molesto warning E_STRICT.
  • Return by Reference devolverá un error: Tanto $foo =& new StdClass() como function &foo producirán ahora un error E_STRICT.
  • Compatibilidad zend.ze1 eliminada: ze1 intentó conservar el viejo comportamiento de PHP4, pero aparentemente “ni siquiera funciona al 100%”, así que será eliminado por completo y dará un error E_CORE_ERROR si se detecta.
  • Se abandona el soporte de Freetype1 y GD1: Estaban obsoletas.
  • FastCGI siempre activado: El código de FastCGI será renovado y estará siempre disponible para la CGI SAPI. Bueno, los que usamos Cherokee ya lo teníamos así.
  • Register Long Arrays eliminado: Sólo $_POST y $_GET.
  • XMLReader y XMLWriter: Pasan a formar parte del núcleo de la distrución.
  • Desaparece la extensión ereg: A partir de esta versión toda la gestión de expresiones regulares irá a través de las bibliotecas ICU, necesarias para unicode.
  • Fileinfo incluída: La extensión para análisis de tipo de ficheros vendrá en el núcleo y activada por defecto.

En definitiva un lenguaje más canónico y con más cosas, que satisfará tanto a frikis como a empresarios. El porqué alguien piensa en Java para programar una aplicación web, habiendo PHP, es algo que se me escapa y se me seguirá escapando para los restos.

2 comments for “¿PHP 5.x para rato?

  1. Andrés
    14 August 2009 at 19:37

    Coincido en que php 5 es una gran tecnología pero:

    Sintaxis php tiene algúnos viejos caracteres “->, ::”, en cambio es fácil aprender. Un día y desde la página oficial puede ser sufucicente para empezar a programar, en J2EE la cosa es algo más complicada.

    Para simples CRUDs en PHP con el framework adecuado la tarea puede ser bastante libiana.

    J2EE corre bajo cualquier plataforma como software empresarial.

    Creo que J2EE es la más segura sin duda.

    • 17 August 2009 at 9:52

      Hola.

      1.- PHP corre también bajo cualquier plataforma. Desde un teléfono móvil hasta un servidor empresarial de un porrón de millones, pero ojo, además de verdad, sin recompilaciones, sin bibliotecas de terceros, sin tomcats, sin nada.

      2.-Para simples CRUDs en Java, necesitamos montones de megas, una máquina potente y unas herramientas demenciales. En PHP cualquier editor de textos, ninguna biblioteca externa y 10 ó 20Kbytes con comentarios y todo pueden sobrar.

      3.-¿J2EE el más seguro sin duda para qué? ¿Seguro de seguridad? Eso dependerá de la aplicación, de los programadores, de las auditorias, etc… ya que seguro porque si no es nada producido con ningún lenguaje.

Comments are closed.