max 0 Denunciar mensagem Publicado 21 de Agosto de 2005 Boas, eu simplifiquei este meu script só para vos explicar a minha duvida, imaginem que tenho o seguinte: $cor1 = "azul"; $cor2 = "verde"; $cor4 = "amarelo"; for ($i=1; $i < 4; $i++) { $texto = "$"."cor"."$i"; echo $texto; } Eu queria que o output disto fosse: azul verde amarelo Mas dá-me sempre: $cor1 $cor2 $cor3 Estou habituado a programar em actionscript, e aí usava o eval, mas... o eval do php é diferente, tentei e não consegui, alguém me consegue ajudar?? Obrigado Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
David Pintassilgo 4 Denunciar mensagem Publicado 21 de Agosto de 2005 eu nao precebo nada de PHP,..mas ver se posso ajudar: em vez de te sair o conteudo da variavel, sai-de o nome da variavel, é isso? não será pelas "" ? cool stuffs to check. http://blog.zxcoders.com// Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
vbmaster 2 Denunciar mensagem Publicado 21 de Agosto de 2005 Eu faria: " $cor1 = "azul"; $cor2 = "verde"; $cor4 = "amarelo"; for ($i=1; $i < 4; $i++) echo $cor(i); } " Mas eu não sei nada de pascal. Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
Lancaster 0 Denunciar mensagem Publicado 21 de Agosto de 2005 Boas, eu simplifiquei este meu script só para vos explicar a minha duvida,imaginem que tenho o seguinte: $cor1 = "azul"; $cor2 = "verde"; $cor4 = "amarelo"; for ($i=1; $i < 4; $i++) { $texto = "$"."cor"."$i"; echo $texto; } Eu queria que o output disto fosse: azul verde amarelo Mas dá-me sempre: $cor1 $cor2 $cor3 Estou habituado a programar em actionscript, e aí usava o eval, mas... o eval do php é diferente, tentei e não consegui, alguém me consegue ajudar?? Obrigado Heyas all.... EDIT: Afinal não é assim tão fácil como isso...tou para aqui a testar, e tb não consegui, porque o que estás a meter na var $texto é simplesmente texto...tb andei para aqui a experimentar as plicas..e tb não deu em nada...mas vou martelar nisto uma beca a ver se sai alguma coisa.. Mas eu não sei nada de pascal. Ermm...isto é PHP... Hasta all... EDIT2: Não sei se te serve ou não..mas porque não pores array nisso...não sei se é possivél ou não..mas acho que é uma boa opção... http://www.mundodotio.com/ Um mundo à parte...ou então não..http://programming.mundodotio.com/ A vida de um programador WEB Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
Bruno 0 Denunciar mensagem Publicado 21 de Agosto de 2005 Há uma função q n me recorda o nome q recebe a string do nome da variavel e devolve o valor.... tipo: xpto("cor".i); (não me recordo do nome da função...mas já a usei) Outro modo é criares um vector... $cor[3] Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
vbmaster 2 Denunciar mensagem Publicado 21 de Agosto de 2005 Boas, eu simplifiquei este meu script só Mas eu não sei nada de pascal. Ermm...isto é PHP... Hasta all... LOL!, sorry o engano, também começava por 'P'. Eu já tive utilidade de fazer cenas assim em vb e nunca consegui tendo de susbtituir códigos por ínumeros if's. É capaz de haver uma solução mas não conheço mesmo :| Fiquem bem :D Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
satanuke 1 Denunciar mensagem Publicado 21 de Agosto de 2005 max...tenta fazer assim, aqui resulta : <?php $cor1 = "azul"; $cor2 = "verde"; $cor3 = "amarelo"; for ($i=1; $i < 4; $i++) { $texto = ${"cor".$i}; echo $texto."<br>"; } ?> Eu normalmente nestes casos uso arrays, mas isto é apenas um exemplo que escreveste porque querias chamar uma variavel sem chamar directamente pelo nome dela. tek.readers blog Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
Grettir 0 Denunciar mensagem Publicado 21 de Agosto de 2005 Heyas, exactamente como ja disseram...o teu retorno é $cor1, $cor2 ... porque estas a dizer $texto = "$"."cor".$i estas a afirmar que a variavel texto tera um valor do tipo string. É preferivel fazeres isso com Arrays. É sempre mais facil criar um ciclo que percorra TODA a Array, do que um ciclo que percorra uma serie de variaveis independentes. Fica bem Ricardo Castelhano ----------------------- FullStack Developer Technical Manager Trainer Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites
max 0 Denunciar mensagem Publicado 21 de Agosto de 2005 grettir, eu não usei arrays porque eu simplifiquei o script... na realidade o cor1, cor2, cor 3 são leituras de base de dados... eu não pus isso aqui no codigo para facilitar a vossa leitura e tentar que ficasse um codigo o mais simples possivel Eu não conseguia porque estava a tentar fazer como no flash: texto = eval("cor"+i); mas no php o eval funciona de maneira diferente. O exemplo do satanuke funcionou na perfeição... Dá para aquilo que eu queria!! Obrigado aos que responderam, Max Partilhar esta mensagem Ligação para a mensagem Partilhar noutros sites