Cosa significa mentre (true) {intendi in PHP?

Ho visto questo codice e non ho idea di cosa significhi.

while(true){ echo "Hello world"; } 

So che ciclo è un po ', ma cosa significa mentre (vero) significa? Quante volte verrà eseguito. Non è un ciclo infinito?

Sì, questo è un ciclo infinito.

La versione esplicita sarebbe

 while (true == true) 

Anche se è un loop infinito, puoi uscire usando break . È utile quando si aspetta che accada qualcosa, ma non si conosce esattamente il numero di iterazione che ti porterà lì.

Questo è infatti (come già detto) un ciclo infinito e di solito contiene un codice che termina se stesso usando un'istruzione 'break' / 'exit'.

Molti demoni usano questo modo di avere un process PHP che continua a funzionare finché qualche situazione esterna non è cambiata. (cioè uccidendolo rimuovendo un file .pid / inviando un HUP ecc. ecc.)

È davvero un ciclo infinito.

Si prega di fare riferimento alla documentazione di PHP attualmente su: http://www.w3schools.com/php/php_looping.asp

Il ciclo while esegue un block di codice purché la condizione specificata sia vera.

 while (expression) { statement(s) } 

L'istruzione while valuta l'espressione, che deve restituire un valore boolean. Se l'espressione è true, l'istruzione while esegue l'istruzione nel block while. L'istruzione while continua a testare l'espressione e ad eseguire il suo block finché l'espressione non diventa false.

Di conseguenza, il codice:

 while (true) { statement(s) } 

eseguirà le istruzioni indefinitamente perché "true" è un'espressione booleana che, come puoi immaginare, è sempre vera.

Come già accennato da @ elzo-valugi, questo ciclo può essere interrotto utilizzando un'interruzione (o un'output):

 while (true) { statement(s) if (condition) { break; } }