Цикл while ещё называется "циклом с предусловием", поскольку мы сначала выполняем проверку условия на истинность, а затем выполняем код.
В отличие от while, цикл do-while или "цикл с постусловием" сначала выполняет код, а затем проверяет условие на истинность:
<?php
$i = 0;
do
echo ++$i;
while($i < 5);
<?php
$i = 0;
// Для нескольких выражений также нужны фигурные скобки
do
{
$i++;
echo $i;
}
while($i < 5);
В обоих случаях результат будет:
12345
Как видите, несмотря на наличие условия $i < 5 в выводе присутствует цифра 5. В этом и заключается единственное отличие от while - цикл do-while всегда выполняет одну итерацию с не истинным условием.
По факту цикл do-while практически никогда не используется.