ursolouco Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 Brother´s!!!Não são tão experiente em PHP, mas gostaria de saber, se é possivel simplificar esta pequena função que criei. <? function zebrar($cont){ $mod = 2; $cor = "#CCCCCC"; $cor1 = "#FFFFFF"; $divisao = $cont % $mod; if($divisao <> 1){ return $cor1; }else{ return $cor; } } // UTILIZE, mas só se for necessario // ursolouco@MSN.com?>Abraços!!! Link para o comentário Compartilhar em outros sites More sharing options...
0 marquim Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 function zebrar($cont) { if ($cont%2) return '#FFFFFF'; else return '#CCCCCC'; } pode ser assim?espero ter sido util! []`s!até mais! Link para o comentário Compartilhar em outros sites More sharing options...
0 Illidan Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 Urso, eu faria assim:<?phpfunction zebrar($i, $num_cores = 2){ switch ($i % $num_cores) { case 0: return "#ccc"; case 1: return "#d9d9d9"; case 2: return "#fff"; }}?>Não sei se era bem isso o que você queria...Essa você pode extender facilmente para trabalhar com mais cores. É só adicionar mais opções dentro do "switch case" e passar como segundo parâmetro o número de cores a serem alternadas (sendo que o default é igual 2 caso não passe esse parâmetro).[]'s! Link para o comentário Compartilhar em outros sites More sharing options...
0 ursolouco Postado Janeiro 24, 2005 Autor Denunciar Share Postado Janeiro 24, 2005 <?phpfunction zebrar($i, $num_cores = 2){ switch ($i % $num_cores) { case 0: return "#ccc"; case 1: return "#d9d9d9"; case 2: return "#fff"; }}?> Hum...Ótima solução!!!!Este switch seria o 'Select Case' no VBScript!!!Muito bom...... deixo ver se consigo, pensar em outra forma!!!!Valeu Brother!!!Abraços!!! Link para o comentário Compartilhar em outros sites More sharing options...
0 Illidan Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 Valeu, Urso! Acho que consegui melhorá-la... nesta você passa as cores como parâmetros da função, e dependendo do número de parâmetros que você passar, será o número de cores alternadas:<?phpfunction zebrar($i){ return func_get_arg(abs($i) % (func_num_args() - 1) + 1);}// Testandoecho '<table border="1" style="width: 200px;" cellpadding="0" cellspacing="0">';for ($i = 0; $i <= 20; $i++){ echo '<tr style="background-color: ' . zebrar($i, "#ddd", "#eee", "#fff") . '"><td>'.$i.'</td></tr>';}echo '</table>';?>Bem melhor, né? você não fica travado com as cores que definiu dentro da função! Abraços!!! Link para o comentário Compartilhar em outros sites More sharing options...
0 ursolouco Postado Janeiro 24, 2005 Autor Denunciar Share Postado Janeiro 24, 2005 Bem melhor, né? você não fica travado com as cores que definiu dentro da função! Grande Illidan!!Se não fosse a infeliz e interminavel fila do suporte tecnico eu me dedicaria mais à programação em PHP!!!!!! Matou a planta..... é deste jeito mesmo que vou determinar minha função.Muito Obrigado Por favor, feche este tópico!! Abraços!!! Link para o comentário Compartilhar em outros sites More sharing options...
0 Illidan Postado Janeiro 24, 2005 Denunciar Share Postado Janeiro 24, 2005 Não tem de quê, urso... Quando sobrar um tempo, dê uma fuçada no manual do PHP. Tem muita coisa legal na documentação das funções e nos comentários dos usuários... Abraços!fechando o tópico... Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ursolouco
Brother´s!!!
Não são tão experiente em PHP, mas gostaria de saber, se é possivel simplificar esta pequena função que criei.
Abraços!!!
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados