+1

Referências ou Ponteiros em PHP?

criado por Allyson F. de Paula Reis em 14/11/2003 9:55am
Acho que deu pra ter idéia do quanto que essas tais "referências" nos podem ser úteis, tanto pela questão do desempenho (principalmente pra quem trabalha com orientação a objetos) quanto pela facilidade extra que esse recurso nos proporciona para o desenvolvimento.

Mas como vimos a UTILIZAÇÃO (semântica) de referências em PHP e de ponteiros em C é bastante parecido, porém os seus funcionamentos/metologias a nivel de máquina são bastante diferentes.


Fonte: Manual do PHP


[]`s

Ragen

Comentários:

Mostrando 1 - 10 de 14 comentários
Olá Emanuel Fonseca,

Acho que você não leu todo o artigo, na última página está escrito:

Fonte: "Manual do PHP"
09/02/2004 9:12pm (~20 anos atrás)

Na boa qdo utilizar material de qualquer lugar, seria bom vc colocar a referencia. Lembre-se que outras pessoas tiveram trabalho para escrever e assim merecem nosso reconhecimento e gratidão.

http://www.iar.unicamp.br/suporte/php/language.references.whatdo.html
06/12/2003 10:02pm (~20 anos atrás)

Geralmente, quando se envia dados via formulários, existe a pretenção de usar todos os valores de todos os campos, certo?!

Considerando "register_globals = Off".
Uma opção boa seria a função import_request_variables().

Ela recebe dois argumentos. O primeiro define que tipo de variável de requisição importar (G = GET, P = POST e C = COOKIE) e o segundo seria um prefixo.



Exemplo:

Considere dois campos no formulário usando método GET: campo "email" e campo "senha".

Quando enviado para o PHP eles chegarão como:

> $_GET["email"]
> $_GET["senha"]

se na primeira linha do PHP você colocar:

> import_request_variables("G", "f_");

Passarão a existir as seguintes variáveis:

> $f_email
> $f_senha

Observação: O segundo argumento poderia ser deixado em branco e assim seriam criadas váriaveis:

> $email
> $senha

------------------------------

Falei alguma novidade? Ajudei? :)
Abraços!

Daniel.

[obs.: Meu primeiro comentário, peguem leve ... hehehe]
26/11/2003 3:07pm (~20 anos atrás)

Manda ver Marcelão! :)

[z]
18/11/2003 6:52pm (~20 anos atrás)

Opa

Cara... Tudo isso que eu disse está na documentação do PHP, então sinta-se a vontade para publicar seu artigo =]

[]`s

Ragen
18/11/2003 7:37am (~20 anos atrás)

Bom, colocarei os dois exemplos e o link deste artigo no meu artigo sobre o assunto
e os devidos agradecimentos

sobre a referência no vetor foi fantástica a idéia :)

darei os créditos claro a ti..

Abraços,

fico no aguardo da permissão de vcs (ragen e silvano)
17/11/2003 8:18pm (~20 anos atrás)

Você diz

register_globals=on

?

Se a guente for pensar em 2 ou 3 variaveis globais o consumo de memória é quase insignificante, mas por outro lado se for uma manipulaçao de milhares de variaveis? Se você pudesse reduzir pelo menos 20% delas usando referências já seria uma grande economia...

Mas geralmente você irá precisar de referencias se você estiver trabalhando com classes (Como citado no artigo).

[]`s

Ragen
17/11/2003 1:33pm (~20 anos atrás)

Cara... Não testei ainda

Mas seria algo tipo:

foreach ($_GET AS &$campo => &$valor) {
${$campo} = $valor;
}
17/11/2003 1:25pm (~20 anos atrás)

Que bela bobagem acabei de escrever.
Perdão.

E...
'Uma saida seria

$a = &$_GET['foo'];

$$a = 'lalala';'

Aqui você não estaria criando uma nova variável também?


E Ragen, que saída você vê para não precisar se preocupar com o register_globals, sem ter consumo extra de memória?

[z]
17/11/2003 1:24pm (~20 anos atrás)

foreach ($_GET AS $campo => $valor) {
&${$campo} = $valor;
}

? heh

[z]
17/11/2003 1:19pm (~20 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)