Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera tenho uma listagem de turmas que fiz que já uso pra outro proposito e queria fazer uma pequena modficação;
Atualmente tenho isto
$conta = 29; //Qtd de registro do banco
$j = 'A';
for ($i = 0; $i < $conta; $i++):
if ($conta > 26): //(26 é a qtd de letras que quero limitar no caso as 26 padroes do alfabeto)
echo "Turma: " . $j . '<br />';
endif;
$j++; //Aqui incremento a letra (a, b, c, d...z)
endfor;
Com o script acima ele me retorna isto:
Turma: A
Turma: B
Turma: C
.....
Turma: Z //aqui ele para e incrementa uma letra para evitar duplicidade ficando assim:
Turma: AA
Turma: AB
Turma: AC
.....
Turma: AZ //e assim por diante até completar a qtd de loops que informei na variavel $conta;
enfim queria mudar apenas o seguinte ao invés de incrementar uma letra incrementar um numero qd encerrase o loop das 26 letras pra ficar assim:
Turma: A
Turma: B
Turma: C
.....
Turma: Z //aqui ele para e incrementa um NUMERO para evitar duplicidade ficando assim:
Turma: A1
Turma: B1
Turma: Z1
......///inicia outro loop
Turma: A2
Turma: B2
Turma: Z2/// e por ai vai
alguma dica de como fazer isso? já quebrei minha cabeça e não achei, aparetenteme é simples;
Conto com ajuda de vs~!
Eserra valeu pela dica mas resolvi de uma forma mais limpa ao invés de fazer dois for pensei um pouco e achei esta solução que era exatamente o que precisava:
$conta = 29;
$j = 'A';
$x = 0;
$y = 1;
for ($i = 0; $i < $conta; $i++):
if($x == 26):
$j = 'A'; //reinicia o alfabeto no limite 26
$y += 1; //incrementa +1 a cada novo loop completo
$x = 0; //reinicia o contador do alfabeto 26
endif;
echo " turma: " . $j . $y;
$j++;
$x++;
endfor;
//retorna:
turma: A1 turma: B1 turma: C1 turma: D1 turma: E1 turma: F1 turma: G1 turma: H1 turma: I1 turma: J1 turma: K1 turma: L1 turma: M1 turma: N1 turma: O1 turma: P1 turma: Q1 turma: R1 turma: S1 turma: T1 turma: U1 turma: V1 turma: W1 turma: X1 turma: Y1 turma: Z1 turma: A2 turma: B2 turma: C2
vlw cara se me ajudo muito com esse post eu coloquei nesse site meu aqui ........
Basta usar dois laços o primeiro vai rodar os números, o segundo a letras....