Mi nombre es Fernando Briano y soy programador.

PHP 4: Parse error: syntax error, unexpected T_OBJECT_OPERATOR

Tras la nueva versión de List Category Posts, muchos usuarios me escribieron por comentarios y mail, informándome de un error en el plugin. El error era el siguiente:

Parse error: syntax error, unexpected T_OBJECT_OPERATOR
in /home/wp-content/plugins/list-category-osts/list_cat_posts.php on line 62

Analizando el servidor del primer usuario que lo reportó me encuentro con una versión vieja de PHP:
PHP/4.4.9
PHP 4 está descontinuado, recuerdo el año pasado hubo terrible movimiento para que los servidores de hosting migraran a PHP 5. Incluso PHP 6 está en desarrollo desde hace un tiempo (no sé hasta qué punto se encuentra estable/usable).

En la línea 62 del archivo del plugin se encontraba lo siguiente:

$output.=" - ".get_userdata($single->post_author)->user_nicename;

PHP 4 no permite encadenar métodos, es algo de PHP 5. Para tener compatibilidad con PHP 4, tuve que guardar el retorno de get_userdata() en una variable, y hacer lo mismo en dos pasos.

¡Exigan a sus servidores de hosting que migren a PHP 5!

Feed de comentarios | Url para Trackbacks | Suscribirse a los posts por correo electrónico

4 comentarios en este post

  1. Avatar shakaran 30 diciembre. 2008 - 9:09 pm Firefox 3.0.5 Ubuntu

    No estoy muy deacuerdo en que modificaras el código para hacerlo compatible con PHP 4.

    De esta manera no se “obliga” a que el usuario se cambie a PHP 5 (en este caso el hosting).

    Espero que no cometamos los mismos errores de IE con PHP. Y seamos los desarrolladores quienes decidamos y no los usuarios.

    Saludos

  2. Avatar Yo 30 diciembre. 2008 - 9:34 pm Firefox 3.0.5 Windows XP

    Si tu hosting aún no tiene PHP5, te están ROBANDO, directamente.

  3. Avatar fernando 30 diciembre. 2008 - 9:42 pm GNU IceCat 3.0.3 Debian GNU/Linux

    shakaran:
    Estoy de acuerdo. Es preferible forzar a los usuarios a migrar. Pero de todas formas el cambio fue menor, y algunos usuarios me señalaron la imposibilidad de hacer el cambio en sus servidores (servidores de clientes, etc.).

    De todas formas el cambio importante tiene que venir por parte de los desarrolladores de CMS’s y demás scripts PHP importantes, para ahí sí realmente forzar la migración de una tecnología en desuso.

    Saludos!

  4. Avatar fernando 30 diciembre. 2008 - 9:45 pm GNU IceCat 3.0.3 Debian GNU/Linux

    Yo:
    Mi hosting sí tiene PHP 5, por lástima no es el caso con todos los hostings…

    En fin…

    Dejar un comentario

    Toasty!