Referências ou ponteiros em PHP

Referências, em PHP, significa acessar o mesmo conteúdo de variável através de vários nomes. Porém é comum ouvir erroneamente a expressão "uso de ponteiros" em PHP, o que por sua vez não chega nem a ser parecido como os ponteiros em C: temos em PHP apelidos numa tabela simbólica (em C endereço de memória).

[ Hits: 60.610 ]

Por: Ragen Dazs em 07/11/2003 | Blog: http://www.orkut.com


O que as referências não são



Como dito anteriormente, referências não são ponteiros. Isto significa que o construtor seguinte não fará o que você espera:

<?php
function foo (&$var)
{
    $var =& $GLOBALS["baz"];
}
foo($bar);
?>

Acontece que $var na função foo estará apontada para $bar na chamada, mas ela será re-apontada para $GLOBALS["baz"]. Não existe maneira de apontar $bar no escopo chamador para qualquer outra coisa utilizando o mecanismo de referências, desde que $bar não está disponível na função foo (ela é representa por $var, mas $var somente tem o conteúdo da variável e não um relacionamento nome para valor na tabela simbólica).

Página anterior     Próxima página

Páginas do artigo
   1. O que referências fazem
   2. O que as referências não são
   3. Passagem por referência
   4. Retornando referências
   5. Destruindo referências
   6. Conclusão
Outros artigos deste autor

Adaptação das empresas de TI aos trabalhadores da era digital

DotGNU: a resposta Open Source ao dotNET

Warcraft 3 - Eurobattle.net

XSS - Um exemplo de ataque

Entendendo um pouco sobre os daemons

Leitura recomendada

BolachaMALPPH Apache X Lighttpd X PHP/FastCGI X APC X HTTPREF X MySQL

Utilizando o Smarty template no PHP

Acessando o Twitter de 5 formas: protocolo HTTP, cURL, classe HttpRequest (PHP), função http_post_fields() do PHP ou PHP+libcurl

Guia completo do Ocomon no Linux - Módulo cliente, abertura de ocorrência (exclusivo VOL)

Como programar com OOP em PHP, uma classe simples

  
Comentários
[1] Comentário enviado por salvini em 02/03/2007 - 11:51h

Excelente artigo! Vejo ponteiros sendo muito usados em C e não em PHP... Mas sem dúvida é muito util!

[2] Comentário enviado por thiagop em 09/07/2007 - 11:23h

Boa, boa boa! :)


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts