do-while
 (PHP 4, PHP 5, PHP 7, PHP 8)
 
  Os laços do-while são muito similares aos laços
  while, com exceção que a expressão de avaliação é
  verificada ao final de cada iteração em vez de no começo.
  A maior diferença para o laço while é
  que a primeira iteração do laço do-while
  sempre é executada (a expressão de avaliação é executada somente no final
  da iteração), considerando que no laço while não é
  necessariamente executada (a expressão de avaliação é
  executada no começo de cada iteração, se avaliada como
  false logo no começo, a execução do laço
  será abortada imediatamente).
 
 
  Só há uma sintaxe para o laço do-while:
  
 
 
   O laço acima será executado somente uma vez, pois após a primeira
   iteração, quando a expressão de avaliação for executada, resultará em
   false ($i não é maior que 0) e a execução do laço
   será encerrada.
 
 
  Usuários avançados de C devem estar familiarizados com um uso diferente do laço
  do-while, que permite parar a execução no meio
  do bloco de códigos, encapsulando-os em um
  do-while (0), e usando o break.
  O código a seguir demonstra isso:
  
 
 
  É possível usar o
  goto
  ao invés desse truque.
 
     
 
    
  
  jayreardon at gmail dot com ¶18 years ago
  
There is one major difference you should be aware of when using the do--while loop vs. using a simple while loop:  And that is when the check condition is made.  
In a do--while loop, the test condition evaluation is at the end of the loop.  This means that the code inside of the loop will iterate once through before the condition is ever evaluated.  This is ideal for tasks that need to execute once before a test is made to continue, such as test that is dependant upon the results of the loop.  
Conversely, a plain while loop evaluates the test condition at the begining of the loop before any execution in the loop block is ever made. If for some reason your test condition evaluates to false at the very start of the loop, none of the code inside your loop will be executed.