I cicli sono probabilmente una tra le cose fondamentali presenti in ogni linguaggio di programmazione, permettendo di eseguire un' azione ripetutamente. Capita spesso infatti di dover utilizzare un ciclo per uno script, facendo in modo che una determinata azione si ripeta varie volte quanto specificate scrivendo il codice una sola volta.
Ciclo For
Partiamo con un esempio banale utilizzando il ciclo for, ad esempio vogliamo mostrare una determinata parola 5 volte.
Analizzando il codice possiamo notare una struttura abbastanza semplice all' interno delle parentesi tonde. La prima istruzione indica un punto di partenza e verrà ripetuta solo una volta all' inizio del ciclo, la terza invece verrà ripetuta finché la seconda sarà vera, pertanto la seconda dovrà essere una condizione. Quando tale condizione diventerà falsa, il ciclo si interromperà.
Una cosa a cui bisogna presentare molta attenzione, sono i cicli infiniti, chiamati 'loop': Quando si genererà un loop, il ciclo non smetterà mai di eseguirsi e pertanto la pagina non si caricherà, andando in errore di timeout che di solito è di 30 secondi, modificabile dal php.ini. Un esempio in cui si potrebbe generare il problema è il seguente:
In questo caso, anche se $i si incrementerà con successo, nella condizione verrà moltiplicato per 0, pertanto sarà sempre 0 e la condizione sarà sempre vera (minore di 5), creando così un loop.
Ciclo While
Un altro ciclo molto usato è il ciclo while, più semplice nella costruzione a differenza del for. Spesso lo si può trovare, magari, per estrapolare dei dati dal risultato di una query. La sintassi è molto semplice, infatti bisognerà inserire tra le parentesi tonde la condizione e tra le graffe l' azione da svolgere.
A differenza del ciclo for, non avremo a disposizione un' istruzione per incrementare la variabile, pertanto spetterà a noi farlo nelle azioni da svolgere, in questo caso sarà $i++
Ciclo Do...While
Un ciclo molto simile al while è il Do...While, che però a differenza di quello analizzato precedentemente ci permetterà di eseguire l' azione almeno una volta.
In questo modo, la condizione del while verrà eseguita dopo l' azione, quindi anche se risulterà falsa, verrà eseguita almeno una volta l' azione del do.
Ciclo Foreach
L' ultimo ciclo è il foreach, di cui abbiamo già parlato nella lezione relativa agli array, quindi sarà un breve riassunto.
Come è facilmente intuibile, tale ciclo è destinato agli array, prelevandone i valori e, se si vuole, la collezione $key => $value.
Uscire da un ciclo
L' uscita da un ciclo è molto semplice, basterà infatti utilizzare l' istruzione break; per uscirne, mentre continue; per saltare l' azione corrente e passare l' interazione successiva.
In questo esempio, abbiamo creato un ciclo con valori che vanno da 1 a 500, ma in realtà i multipli di 25 verranno saltati, dato che abbiamo creato un' elseif nella quale vi è scritto che se il valore $ind è multiplo 25, verrà saltato l' echo e se sarà multiplo di 100 verrà interrotto il ciclo.
Ciclo For
Partiamo con un esempio banale utilizzando il ciclo for, ad esempio vogliamo mostrare una determinata parola 5 volte.
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Analizzando il codice possiamo notare una struttura abbastanza semplice all' interno delle parentesi tonde. La prima istruzione indica un punto di partenza e verrà ripetuta solo una volta all' inizio del ciclo, la terza invece verrà ripetuta finché la seconda sarà vera, pertanto la seconda dovrà essere una condizione. Quando tale condizione diventerà falsa, il ciclo si interromperà.
Una cosa a cui bisogna presentare molta attenzione, sono i cicli infiniti, chiamati 'loop': Quando si genererà un loop, il ciclo non smetterà mai di eseguirsi e pertanto la pagina non si caricherà, andando in errore di timeout che di solito è di 30 secondi, modificabile dal php.ini. Un esempio in cui si potrebbe generare il problema è il seguente:
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
In questo caso, anche se $i si incrementerà con successo, nella condizione verrà moltiplicato per 0, pertanto sarà sempre 0 e la condizione sarà sempre vera (minore di 5), creando così un loop.
Ciclo While
Un altro ciclo molto usato è il ciclo while, più semplice nella costruzione a differenza del for. Spesso lo si può trovare, magari, per estrapolare dei dati dal risultato di una query. La sintassi è molto semplice, infatti bisognerà inserire tra le parentesi tonde la condizione e tra le graffe l' azione da svolgere.
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
A differenza del ciclo for, non avremo a disposizione un' istruzione per incrementare la variabile, pertanto spetterà a noi farlo nelle azioni da svolgere, in questo caso sarà $i++
Ciclo Do...While
Un ciclo molto simile al while è il Do...While, che però a differenza di quello analizzato precedentemente ci permetterà di eseguire l' azione almeno una volta.
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
In questo modo, la condizione del while verrà eseguita dopo l' azione, quindi anche se risulterà falsa, verrà eseguita almeno una volta l' azione del do.
Ciclo Foreach
L' ultimo ciclo è il foreach, di cui abbiamo già parlato nella lezione relativa agli array, quindi sarà un breve riassunto.
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
Come è facilmente intuibile, tale ciclo è destinato agli array, prelevandone i valori e, se si vuole, la collezione $key => $value.
Uscire da un ciclo
L' uscita da un ciclo è molto semplice, basterà infatti utilizzare l' istruzione break; per uscirne, mentre continue; per saltare l' azione corrente e passare l' interazione successiva.
PHP:
Perfavore,
Entra
oppure
Registrati
per vedere i codici!
In questo esempio, abbiamo creato un ciclo con valori che vanno da 1 a 500, ma in realtà i multipli di 25 verranno saltati, dato che abbiamo creato un' elseif nella quale vi è scritto che se il valore $ind è multiplo 25, verrà saltato l' echo e se sarà multiplo di 100 verrà interrotto il ciclo.