Variáveis Variáveis
num exemplo prático pode ser feito algo como
você irá entender o exemplo acima quando começarmos a montar o nosso mini script.
Vamos seguir sempre o conceito e tentar implementar isso ai temos então essa porção de código:
ai, fizemos um for muito peculiar em sistemas, onde "printamos" na tela o valor retornado do banco de dados e queremos gerar nossos checkbox dinamicamente
notem que o value é sempre o mesmo, e o nome há um fator diferenciado-os que é exatamente o conceito de variável variável, cada nome do formulário é uma variável no PHP e logo estes nomes todos se diferenciam por um código auto incrementado.
<?php // ... $valor = "algo_$x"; // e $$valor iria conter o que nós queremos.. // ... ?>
você irá entender o exemplo acima quando começarmos a montar o nosso mini script.
Vamos seguir sempre o conceito e tentar implementar isso ai temos então essa porção de código:
<?php for ($x = 0; $x < 10; $x++) { echo "<input type=checkbox name=\"ck_$x\" value=\"OK\"> Texto Aqui<BR>\n"; } ?>
ai, fizemos um for muito peculiar em sistemas, onde "printamos" na tela o valor retornado do banco de dados e queremos gerar nossos checkbox dinamicamente
notem que o value é sempre o mesmo, e o nome há um fator diferenciado-os que é exatamente o conceito de variável variável, cada nome do formulário é uma variável no PHP e logo estes nomes todos se diferenciam por um código auto incrementado.
Escrever é dificil pra caramba.. apesar de ter pego alguns exemplos do php.net e ter tentando passar um exemplo é realmente um assnuto complicado..
Valeu novamente pelos comentários.. que muitas vezes agregam valores aos artigos :)
Valeu novamente pelos comentários.. que muitas vezes agregam valores aos artigos :)
14/12/2003 6:28pm
(~21 anos atrás)
Uso esse sistema em meu site.
Estoco as variaveis num arquivo config que incluo nos arquivos do site.
Cada variavel dessa tem um nome e o valor (url).
O que faco e basicamente isso:
-Os links saum desta forma
<a href="?g=principal">
?g=downloads
?g=contato
- ai faco isso:
$go = $_GET['g'];
$add = $$go;
<iframe src=<?=$add?>>
- ai se g=downloads, ele ira procurar pela var downloads e usara seu valor na iframe.
É claro que eu trato os dados que sao provenientes do GET que podem ser perigosos, mas é ate seguro, pois os enderecos sao definidos pelas variveis do config.
Estoco as variaveis num arquivo config que incluo nos arquivos do site.
Cada variavel dessa tem um nome e o valor (url).
O que faco e basicamente isso:
-Os links saum desta forma
<a href="?g=principal">
?g=downloads
?g=contato
- ai faco isso:
$go = $_GET['g'];
$add = $$go;
<iframe src=<?=$add?>>
- ai se g=downloads, ele ira procurar pela var downloads e usara seu valor na iframe.
É claro que eu trato os dados que sao provenientes do GET que podem ser perigosos, mas é ate seguro, pois os enderecos sao definidos pelas variveis do config.
13/12/2003 4:14pm
(~21 anos atrás)
Concordo com vc, mas acho que ele foi explicativo o suficiente, o problema e que um iniciante naum dispoe de muita logica de programacao, entao fica dificil entender algo tao abstrato, mas acho que ele explico muito bem sim
uma explicacao rapida:
como $a = "ola";
entao
$$a sera $ola pois $a contido em $$a, sera interpretado com "ola", ja que $a vale "ola"
acho que e basicamente isso...
talvez faltaram mais exemplos de uso, pois sao enormes os seus usos
uma explicacao rapida:
como $a = "ola";
entao
$$a sera $ola pois $a contido em $$a, sera interpretado com "ola", ja que $a vale "ola"
acho que e basicamente isso...
talvez faltaram mais exemplos de uso, pois sao enormes os seus usos
13/12/2003 4:00pm
(~21 anos atrás)
Legal, Parabens!!
Agora um iniciante não entenderia muito bem o assunto não, podia ser mais explicativo.
No mais, tudo bem.
;)
Agora um iniciante não entenderia muito bem o assunto não, podia ser mais explicativo.
No mais, tudo bem.
;)
13/12/2003 12:11pm
(~21 anos atrás)
Bom, eu formulei algo aki, nao testei ainda nao, mas talvez funcione...
Seria legal definir tb, quantos checkboxs há, por meio de uma var e passá-la pelo form
Outra coisa, que nao pus no codigo abaixo, seria o uso, por seguranca, de ${$a}check, em vez de $$a, para que o 'usuario' nao saiba os nomes da variveis a qual se esta atribuindo o valor dos checks
<?php
$num = $_POST['num']; // numero de checkboxs
$a = "ck_$x";
for($x=0;$x<$num;$x++){
$$a = $_POST[$a];
}
?>
Seria legal definir tb, quantos checkboxs há, por meio de uma var e passá-la pelo form
Outra coisa, que nao pus no codigo abaixo, seria o uso, por seguranca, de ${$a}check, em vez de $$a, para que o 'usuario' nao saiba os nomes da variveis a qual se esta atribuindo o valor dos checks
<?php
$num = $_POST['num']; // numero de checkboxs
$a = "ck_$x";
for($x=0;$x<$num;$x++){
$$a = $_POST[$a];
}
?>
08/12/2003 4:11pm
(~21 anos atrás)
Nunca havia tentado fazer isso com classes, mas achei super interessante a idéia.. bem Legal David !
Valeu pela dica
Valeu pela dica
06/12/2003 7:18am
(~21 anos atrás)
Bem lembrado David, já vi um script de um cara que usava as funções dele assim, de acordo com o que vinha de um GET que estava no link ele fazia um switch e nele tinha uma variável com o nome da função, daí ele só chamava a função depois do switch, muito útil...
Isso eu vi no início do meu aprendizado, e até aí eu nunca tinha visto nada muito útil com o switch... Como o bichinho é bom...
Isso eu vi no início do meu aprendizado, e até aí eu nunca tinha visto nada muito útil com o switch... Como o bichinho é bom...
06/12/2003 6:49am
(~21 anos atrás)
Lembrando ainda que esse tipo de tratativa com as variáveis pode ser usada para funções e classes. Por exemplo:
$func = "foo";
echo $func($arg1,$arg2,...);
$class= "bar";
$foo = new $class();
--db
$func = "foo";
echo $func($arg1,$arg2,...);
$class= "bar";
$foo = new $class();
--db
05/12/2003 8:22pm
(~21 anos atrás)
Gostei do artigo, isso é problema frequente nas listas e fóruns de php, pode ajudar bastante. Sobre as variáveis variáveis, este sim é um recurso interessante do php, e paar utilizar é bem parecido com a manipulação dos valores e das chaves de arrays. Esse é o nosso php...
05/12/2003 3:48pm
(~21 anos atrás)
Essa parte eu nunca havia visto no manual do PHP, realmente por desinteresse. Mas, através do artigo, conheci novas formas o qual não conhecia e estão sendo úteis, como a $var{$var}. Abraços