[Cascavel-pm] Duvida com DBI
Luis Campos de Carvalho
monsieur_champs em yahoo.com.br
Quinta Maio 12 16:39:21 PDT 2005
--- Lorn <lorn.br em gmail.com> escreveu:
> Tentei fazer com hash, até funciona só que não consigo pegar os dados,
> o negocio é array mesmo, eu não entendi o que voce quis dizer com
> desreferenciar, ou melhor dizendo, eu não sei desreferenciar um array.
Referências são como ponteiros (do ANSI C) mas mais espertos (mais que o Java).
Tudo o que você precisa saber para começar é:
1. Operador "referência": "\" cria uma referência de uma variável. Assim:
$scalar_ref = \$scalar;
$array_ref = \@array;
$hash_ref = \%hash;
2. Referências para hashes e arrays anônimos podem ser criados assim:
$anon_array_ref = [ qw/ um array anonimo não tem correspondente físico no programa / ];
$anon_hash_ref = { referencia => "para", um => "hash", anonimo => "sim!" };
3. Para de-referenciar (e obter de volta o objeto "apontado" por uma referência), você deve usar
o caracter indicador de "tipo" que você deseja obter depois da de-referência:
@real_array = @$array_ref; # te traz de volta o array guardado em $array_ref.
%real_hash = %$hash_ref; # te traz de volta o hash guardado em $hash_ref.
3.1. você pode desejar obter apenas uma parte do objeto de-referenciado, assim:
$quinto_elemento = $array_ref->[5];
$sexto_elemento = $$array_ref[5]; # mesma coisa, TIMTOWTDI.
$chave_oies = $hash_ref->{oies};
$chave_oies = $$hash_ref{oies};
Isso é BEM básico, mas resolve a maior parte dos seus problemas.
Desculpe a demora em responder, mas eu andei ocupado com outras coisas durante o dia de hoje...
Putamplexos!
--
Luis Campos de Carvalho
Member of "São Paulo Perl Mongers",
Unix SysAdmin & OCP/DBA Oracle
http://br.geocities.com/monsieur_champs/
__________________________________________________
Converse com seus amigos em tempo real com o Yahoo! Messenger
http://br.download.yahoo.com/messenger/
Mais detalhes sobre a lista de discussão Cascavel-pm