Gurzi Posted June 26, 2006 at 04:43 PM Report #34922 Posted June 26, 2006 at 04:43 PM Boas pessoal.. ando agora por dentro do PHP e isto está a ficar ruim.. encravei aqui em coisas como o each , o foreach, o list, etc... mas o que venho pedir agora é que alguem tenha paciência para fazer um mini tutorial a explicar-me para que serve realmente o foreach.. aguardo a vossa resposta, obrigado 🙂 ps : é que tenho a noção que o que faço com o foreach faço com um ciclo for, ou estou a entender mal as coisas? 😛
Guest id194 Posted June 26, 2006 at 05:07 PM Report #34929 Posted June 26, 2006 at 05:07 PM por exemplo, se tiveres um array de qualquer tipo e não souberes quantos valores tem e não quiseres tar a calcular para depois puderes usar um ciclo for que processe todos os valores do array, podes usar o foreach. o foreach vai processar todos os valores até chegar ao fim do array, enquanto que um for vai processar ate à condição definida. a diferença principal esta. e isto foi só um exemplo que me veio à cabeça porque noutras situações pode não ser tão linear.
kingless Posted June 26, 2006 at 05:33 PM Report #34939 Posted June 26, 2006 at 05:33 PM Exemplo: $array = array("valor", "valor1", "valor2", "valor3"); foreach($array as $valor) { // Para cada valor de $array como $valor echo $valor; } Isso vai mostrar algo como: valor valor1 valor2 valor3
Gurzi Posted June 26, 2006 at 08:12 PM Author Report #34969 Posted June 26, 2006 at 08:12 PM é muito utilizado ?
kingless Posted June 26, 2006 at 08:32 PM Report #34977 Posted June 26, 2006 at 08:32 PM Posso te garantir que sim.
Gurzi Posted June 26, 2006 at 08:42 PM Author Report #34980 Posted June 26, 2006 at 08:42 PM obrigado 🙂 um abraço a todos... 😛
pedrotuga Posted June 27, 2006 at 05:12 AM Report #35009 Posted June 27, 2006 at 05:12 AM Bem... dêm o manual a um homem e ele fica feliz! eheheh... http://www.php.net/manual/pt_BR/control-structures.foreach.php ( em portugues e tudo ) A aplicação mais prática é uma coisa teste tipo $cores["casaco"]="azul"; $cores["cinto"]="preto"; $cores["chapeu"]="castanho"; $cores["cachecol"]="vermelho"; foreach ($cores as $key => $value) { echo "O meu $key; é da cor $value<br />\n"; } Epa... eu n me importo de ajudar e explicar, até o faço com prazer. N me leves isto a mal, mas habitua-ta a ir SEMPRE consultar o manual. Não é por mim outras pessoas aqui no fórum não ajudarem, porque nós ajudamos,.. simplesmente é melhor para ti pois é mais rapido... se não perceberes aí entao tens por exemplo este magnifico fórum.
Gurzi Posted June 27, 2006 at 08:36 AM Author Report #35018 Posted June 27, 2006 at 08:36 AM pedrotuga , felizmente já ando neste fórum à muito tempo mesmo, já tive épocas em que não gostava de procurar e não é o caso.. procurei , procurei, tirei tutoriais e não entendi.. simplesmente porque percebi que era mais um ciclo e como nunca o tinha visto(só estou habituado aos ciclos de linguagem C) fiquei muito confuso. mas obrigado pela tua simpatia 😛 só uma questão, sem ser echos, que outras funções em um desenvolviemnto de um web site se pode atribuir ao foreach() ? outra dúvida.. nomes['tiago'] = "Branco"; nomes['Pedro'] = 'Amarelo"; nomes['Antonio'] ="Vermelho"; nomes['Rui'] = "Rosa"; foreach( $nomes as $nome => $cor) qual é a diferença entre => e -> é que existe tutoriais que usam o -> , exemplo foreach( $this->plots as $p ) e porque do -> estar no inicio »?
pedrotuga Posted June 27, 2006 at 09:03 AM Report #35021 Posted June 27, 2006 at 09:03 AM Lá está uma pergunta que gera muita confusão. O -> é usado em programção orientada a objectos e serve para referenciar uma rotina ou um atributo de um objecto. Eu não sou muito pela POO pelo que não a uso muito e não domino a sua sintaxe. Mas para te dar um exemplo simples: imagina que criaste uma classe "carrinhodecompras" e que a certa altura no teu programa crias um objecto do tipo carrinhodecompras chamado por exmeplo "omeucarrinho". O operador -> pode ser usado para aceder às rotinas ou atributos da classe a qual esse objecto pertence, por exemplo: $omeucarrinho->esvazia(); isto podia por exemplo esvaziar. Imagina que a classe permitia definir um tamanho máximo para cada carrinho, para o caso de queres que em cliente qq n pudesse comprar por exemplo mais do que tres produtos por dia... o tamanho docarrinho estaria disponivel na seguinte variavel: $omeucarrinho->$tamanho ( se tiver erros de sintaxe corrijam-mos pf ) quanto ao operador => apenas é utilizado em arrays. tipo... $cor= array ( "casaco" => "verde", "cachecol"=>"azul" ); echo o meu casaco é $cor["casaco"]; o foreach serve para tudo o que os outros ciclos servem, lool 😛 pa... no meu site usei o foreach para gerar uma lista de checkboxes a partir de registos da base de dados, aquilo envia um array pelo post... no array vai o id do registo na bd em questão como chave e o estado como valor. isto é só um exemplo.
kingless Posted June 27, 2006 at 09:18 AM Report #35026 Posted June 27, 2006 at 09:18 AM Tu tens é que ir ler o manual http://pt.php.net/manual/ essas coisas eu aprendi uns 3 dias depois de começar a ler o manual tu tens é preguiça e não gostas de ler.
Gurzi Posted June 27, 2006 at 09:31 AM Author Report #35028 Posted June 27, 2006 at 09:31 AM má escolha, se não gostá -se de ler não comprava um livro de 600 páginas em inglês de php 4.. obrigado pedro tuga 😛
kingless Posted June 27, 2006 at 09:43 AM Report #35031 Posted June 27, 2006 at 09:43 AM Compraste um livro em inglês de PHP 4 e não sabes fazer isso ? Essas são as primeiras coisas que os livros e manuais ensinam. Se não sabes isso é proque ainda nem leste o livro...
kingless Posted June 27, 2006 at 09:46 AM Report #35032 Posted June 27, 2006 at 09:46 AM E o livro que compraste concerteza que não é para ti (PHP 4.3 de Carlos Serrão e Joaquim Marques) eu aprendi na net sem ler nenhum livro isso tudo é preguiça que tens. Mas pronto a vida é tua 😛
Gurzi Posted June 27, 2006 at 04:09 PM Author Report #35076 Posted June 27, 2006 at 04:09 PM Bem , tinha dado este tópico como encerrado mas rapidamente achei que iria ter mais dúvidas.. Absurdo ou não, perdi uma tarde inteira para aprender o foreach() fiz isto : <?php $preco_produtos["Roupas"]["Calcas"] = 20; $preco_produtos["Roupas"]["T-Shirts"]=10; $preco_produtos["Acessorios"]["Luvas"] = 45; $preco_produtos["Acessorios"]["Saco de Boxe"]=76; foreach ($preco_produtos as $sector ) { foreach ($sector as $produto => $preço) echo "<br>$produto -- $preço"; } ?> agora sim funcional mas antes tinha feito isto: <?php foreach ($preco_produtos as $sector => $produto) { foreach ($produto as $preço) echo "$produto -- $preço"; } ?> já percebi como funciona mas alguem me pode dar uma ajuda para fazer a mesma coisa que eu quero mas usando o => no primeiro foreach sff ? outra dúvida, quando vocês declaram um array , usam mais a syntax => " $nome = array(10=>"Tiago"); ou fazem logo $nome[10] = "tiago" ; ? obrigado malta 😛
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now