for
 (PHP 4, PHP 5, PHP 7, PHP 8)
 
  Цикл for самый сложный цикл в PHP.
  Цикл ведёт себя аналогично языку C. Синтаксис цикла
  for выглядит вот так:
  
 
 
  Первое выражение expr1
  вычисляется или выполняется только один раз безусловно в начале цикла.
 
 
  В начале каждой итерации оценивается выражение expr2.
  Цикл продолжается, а вложенные инструкции выполняются,
  если выражение принимает значение true.
  Выполнение цикла заканчивается, если выражение принимает значение false.
 
 
  В конце каждой итерации вычисляется или выполняется
  выражение expr3.
 
 
  Каждое из выражений разрешается оставлять пустым или указывать в каждом выражении
  набор выражений через запятую. В части expr2
  каждое выражение, которое отделили запятой, вычисляется, но результат берётся
  из последнего.
  Цикл выполняется бесконечно,
  если выражение expr2 оставили пустым; PHP неявно рассматривает
  пустое выражение как значение true, по аналогии с языком C. Это бывает не так бесполезно,
  как кажется, поскольку вместо выражения истинности в списке выражений цикла for
  цикл часто требуется прервать по условию в теле цикла путём вызова инструкции
  break.
 
 
  Рассмотрим следующие примеры. Каждый пример выводит числа
  от 1 до 10:
  
 
 
  Конечно, первый пример кажется самым красивым (или, возможно,
  четвёртый), но программисты часто находят пустые
  выражения в циклах for удобными.
 
 
  PHP также поддерживает для циклов for
  альтернативный синтаксис с двоеточием.
  
 
 
  Следующий пример перебирает массивы стандартным способом,
  к которому привыкли разработчики.
 
 
  
 
 
  Приведённый код иногда работает медленно, поскольку размер массива вычисляется
  в каждой итерации. Поскольку размер не меняется, цикл легко оптимизируется
  через промежуточную переменную, в которую записывается размер массива, вместо
  повторяющихся вызовов функции count():