Le 1 mars 2014 13:10, Nicolas <[email protected]> a écrit :

> Salut Philippe,
>
> j'ai vu le patch que tu as proposé. Je ne comprends pas pourquoi ça ne
> marche pas. Mon code est parfaitement valide quel que soit le niveau
> d'erreurs.
>
> Je n'ai pas de pc sous windows. Est-ce que ce code fonctionne ?
>
> <?php
> $chaine = 'lkjsd dslmk sd;ml ksd';
>
>
> if (($pos = strpos($chaine, ';')) !== false) {
>     echo "point virgule trouvé à ", $pos, "\n";
> } else {
>     echo "point virgule non trouvé\n";
> }
>
>
Ce n'est pas lié à windows, mais bien à la version de php.

$x=$y retourne $y. donc empty($x=$y) équivant à $x=$y; empty($y).

donc empty($temp = $core->callBehavior('adminMediaURL',$page_url)) est vu
comme :
$temp = $core->callBehavior('adminMediaURL',$page_url);
empty($core->callBehavior('adminMediaURL',$page_url))


Donc empty ne teste pas $temp, mais une expression. Cela n'est supporté
qu'à partir de php 5.5, dans les versions antérieures, empty prend
obligatoirement une variable en paramètre.  Il faut donc décomposer le test.

--
Bruno
-- 
Dev mailing list - [email protected] - http://ml.dotclear.org/listinfo/dev

Répondre à