La diferencia estaría en la condición que usarías para terminar el bucle. Por ejemplo, supongamos que tenemos una función que genera un número aleatorio entre el 1 al 5 y queremos tomar solo al primero número para generado. Llegado ese momento, se terminará el bucle.
Código PHP:
Ver originalfunction random(){
}
while (true){
if (($num = random()) % 2 == 0) break;
}
echo $num; //El primer número par generado
En tu caso, tendrías que determinar qué valor debe devolver la función para proceder a terminar el bucle.
Un saludo