[bcn-pm] problemas con arreglos
Carlos Escribano
ces at tablinum.org
Mon Apr 11 14:10:14 PDT 2005
El Sábado 09 Abril 2005 13:41, Alex Muntada escribió:
> Fixa't que construeixes malament el @atributo; hauries
> d'utilitzar els parèntesis enlloc dels corxets (indiquen
> la creació d'una referència a array anònim). És a dir:
>
> my @atributo = ( ... );
Ah, sorry, no me he dado cuenta al escribir el ejemplo; en realidad lo ponía
bien, entre paréntesis.
> Si no m'equivoco, el mètode LDAP::add() necessita que la llista
> d'atributs es passi amb una referència i potser aquest és el
> problema:
>
> $ldap->add(..., attr => \@atributo, ...);
Tienes razón, se ha de leer bien la documentación antes de hacer nada. No
usaba add, sino replace, pero funciona igual:
'VALUE should be a string if only a single value is wanted in the
attribute, or a reference to an array of strings if multiple values are
wanted'
Los ejemplos que había utilizado en primer lugar eran escalares (incluso en
multilinea) y en ese caso se han de utilizar directamente:
$mesg = $ldap->modify( $dn, replace => { 'mail' => $atributo } );
En cambio dice que cuando son arreglos se debe usar referencias, y esto es lo
que se me paso por alto.
Lo que me confundió fue que los primeros ejemplos que utilizé pasaba la matriz
tal cual, y funcionaba. Pero cuando le pasé la matriz con subatributos no
funcionó, y tampoco dio mensajes de error de tipos, que sí los da en otros
casos, simplemente no hacía nada. La verdad es que cada vez se menos, y estos
modulos son realmente magicos, no dejan de sorprenderme.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: signature
Url : http://mail.pm.org/pipermail/barcelona-pm/attachments/20050411/1bff8e98/attachment.bin
More information about the Barcelona-pm
mailing list