Programme incriminé: phpldapadmin
fichier : lib/server_functions.php
Contexte : libapache2-mod-php5 5.0.5-31 (rétroprté sur debian sarge)
Symptômes : plante silencieusement malgré error_reporting à debug.
(nota: il y a un callback, mais il semble fonctionner quand
je mets des cochoncetés ailleurs :)
$attrs = array_pop($this->search(null,dn_escape($dn),
'(objectClass=*)',array(),'base',false,$deref));
=> marche pas !
J'ai trouvé la panne par tatonnements, mais si elle est résolue
je ne comprend pas /pourquoi/ ça plante, sachant que la fonction
renvoie systématiquement un tableau...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
flconseil
C'est parce que array_pop, non seulement renvoie le dernier element du table passe en argument, mais supprime egalement cet element du tableau. Si tu regardes la doc, tu voies que le tableau est passé par référence, donc ça doit être une 'lvalue'.
Dans ton exemple, la deuxieme forme fonctionne car il peut modifier $result.
C'est parce que array_pop, non seulement renvoie le dernier element du
table passe en argument, mais supprime egalement cet element du
tableau. Si tu regardes la doc, tu voies que le tableau est passé par
référence, donc ça doit être une 'lvalue'.
Dans ton exemple, la deuxieme forme fonctionne car il peut modifier
$result.
C'est parce que array_pop, non seulement renvoie le dernier element du table passe en argument, mais supprime egalement cet element du tableau. Si tu regardes la doc, tu voies que le tableau est passé par référence, donc ça doit être une 'lvalue'.
Dans ton exemple, la deuxieme forme fonctionne car il peut modifier $result.