for
 (PHP 4, PHP 5, PHP 7, PHP 8)
 
  Os laços for são os mais complexos no PHP.
  Possui comportamento semelhante ao C. A sintaxe do laço
  for é:
  
 
 
  A primeira expressão (expr1) é
  avaliada (executada), uma vez, incondicionalmente, no início
  do laço.
 
 
  No começo de cada iteração a
  expr2 é avaliada. Se a avaliada como
  true, o laço continuará e as instruções aninhadas
  serão executadas. Se avaliada como
  false, a execução do laço terminará.
 
 
  No final de cada iteração, a expr3 é
  avaliada (executada).
 
 
  Cada uma das expressões podem ser vazias ou conter múltiplas
  expressões separadas por vírgulas. Na expr2, todas
  as expressões separadas por vírgula são avaliadas mas o resultado é
  obtido da última parte.
  Se a expr2 estiver vazia significa que o laço deve
  ser executado indefinidamente (O PHP considera implicitamente como
  true, igual ao C). Isto não é inútil
  como se imagina, pois muitas vezes deseja-se interromper o laço utilizando
  a instrução break
  ao invés de usar a expressão verdade do
  for.
 
 
  Analise os seguintes exemplos. Todos exibem números
  de 1 até 10:
  
 
 
  É claro que o primeiro exemplo aparenta ser o mais simpático (ou
  talvez o quarto), mas pode-se achar que o uso de expressões
  vazias no laço for, seja vantajoso em algumas
  ocasiões.
 
 
  O PHP também suporta a sintaxe alternativa "dois pontos" para o
  laço for.
  
 
 
  É comum, para muitos usuários, iterar em arrays como no
  exemplo abaixo.
 
 
  
 
 
  O código acima pode se tornar lento, pois o tamanho do array será calculado
  a cada iteração. Desde que o tamanho nunca mude, o laço pode ser facilmente
  otimizado usando uma variável intermediária para armazenar o tamanho ao invés
  de executar repetidamente o count():