Mar
30
Dic

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!


Si te gustó éste post, podés apoyar a PicandoCódigo a través de PayPal!

4 Comentarios para “PHP 4: Parse error: syntax error, unexpected T_OBJECT_OPERATOR”

  1. shakaran a las 9:09 pm 30 Diciembre. 2008
    Firefox 3.0.5Ubuntu
    Mozilla/5.0 (X11; U; Linux i686; es-ES; rv:1.9.0.5) Gecko/2008121711 Ubuntu/9.04 (jaunty) Firefox/3.0.5

    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. Yo a las 9:34 pm 30 Diciembre. 2008
    Firefox 3.0.5Windows XP
    Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5

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

  3. fernando a las 9:42 pm 30 Diciembre. 2008
    GNU IceCat 3.0.3Debian GNU/Linux
    Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092921 IceCat/3.0.3-g1 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. fernando a las 9:45 pm 30 Diciembre. 2008
    GNU IceCat 3.0.3Debian GNU/Linux
    Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.3) Gecko/2008092921 IceCat/3.0.3-g1 Debian GNU/Linux

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

    En fin…

Trackbacks y pingbacks:

Dejar un comentario

Al agregar un comentario en esta página, usted acepta la siguiente licencia para su publicación:
Creative Commons License Creative Commons Attribution-Share Alike 3.0 Unported License.




Si quieres mostrar código, enciérralo entre los tags pre de esta forma:
<pre lang="L"> y </pre>, donde L es un lenguaje compatible GeSHI. Más info.

XHTML: Las siguientes tags están permitidas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">


Additional comments powered by BackType

Búsqueda personalizada