Ciclo in php e tempo

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Salve a tutti, vorrei esporvi un problema.

Comincio subito ;)

Ho una pagina in php in cui è presente un normalissimo ciclo

PHP:
for ($k = 1; $k < 50 + 1; $k++)
{
	echo "Numero: " . $k . "<br/>";
}

Se lancio la pagina e lo lascio in questo modo stamperà ovviamente:
Codice:
Numero: 1
Numero: 2
Numero: 3
Numero: 4

Etc.. etc.. fino a 50.

Fin qui nulla di strano.

Ora se io però voglio che ad ogni stampa di un numero il ciclo freezi di 5 secondi devo modificare il codice così:
PHP:
for ($k = 1; $k < 50 + 1; $k++)
{
	echo "Numero: " . $k . "<br/>";
	sleep(5);
}

Tuttavia il server interrompe l'esecuzione dello script dando questo errore:
Codice:
Service Temporarily Unavailable

The server closed the connection without sending any data.

The server is temporarily unable to service your request due to maintenance downtime or capacity problems.

Due to heavy load on the server, connections may be temporarily blocked from locations that fetch an unusually high number of pages.

We apologize for the inconvenience.

Come posso ovviare a questo errore sapendo che, poichè sono su un host gratuito, non posso intervenire sul php.ini e quindi non posso cambiare max_execution_time e set_time_limit?

L'esecuzione dello script permessa è massimo di 30 secondi.

Ho provato a "spezzare" il ciclo for facendo in modo di crearne 10 tale che ogni ciclo contasse cinque numeri, cioè il primo ciclo contava fino a 5, il secondo da 5 a 10 il terzo da 10 a 15 e così via. Ma ovviamente non è servito a una mazza.
 
Ultima modifica:

flameseeker

Utente Attivo
27 Nov 2013
699
0
0
E' una richiesta un pò insolita, posso chiederti qual è lo scopo ? Nel senso, per quale motivo devi adottare questa soluzione, qual è il tuo problema iniziale ?
Magari si riesce a trovare un approccio meno problematico.
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Ciao in realtà non ho un problema ben definito poichè stavo studiando il ciclo for in php, il break e il continue.
Stavo per passare agli array nei cicli e mi sono trovato una cosa di questo genere dinanzi. Ho googlato ma ho visto che nessuno ha proposto una soluzione per "spezzare" cicli molto lunghi.

Ho trovato qualcosa sul Thread ma non credo che si possa applicare a questo caso (o almeno non ne ho le capacità).

Avevo pensato ad una soluzione piuttosto complessa in realtà:

avevo pensato di fare un ciclo che gestisca la creazione di pagine php temporanee nelle quali venga scritto parte del ciclo da eseguire, una volta che tutte le pagine hanno eseguito il ciclo in un iframe vengono aperte e si visualizza il risultato (1.2.3.4.5.6 ecc..)

Ma mi sembra una cosa davvero macchinosa :eek:

Edit: ovviamente queste cose le studio per hobby quindi non ho una continuità. Quindi essendo soggetto ad un ricorrente analfabetismo di ritorno, mi son creato un piccolo "archivio" di script tutti commentati in modo da rinfrescarmi la memoria immediatamente quando li vado a prendere :p
 
Ultima modifica:

frenkytribe

Utente Attivo
17 Gen 2013
87
0
0
Ciao, non avendo accesso al php.ini sinceramente non so se tu possa modificarlo ugualmente da php, non ci ho mai provato...
Comunque potresti fare una prova utilizzando ini_set, adesso non ricordo quali siamo i parametri da andare a modificare ma dovrebbero essere qualcosa del tipo MAX_EXECUTION_TIME e SET_TIME_LIMIT.
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Ciao, non avendo accesso al php.ini sinceramente non so se tu possa modificarlo ugualmente da php, non ci ho mai provato...
Comunque potresti fare una prova utilizzando ini_set, adesso non ricordo quali siamo i parametri da andare a modificare ma dovrebbero essere qualcosa del tipo MAX_EXECUTION_TIME e SET_TIME_LIMIT.
Ciao grazie per la risposta ma non posso modificare quei valori in quel modo. In realtà mi interessa capire come frammentare il ciclo for :p
 
Discussioni simili
Autore Titolo Forum Risposte Data
E Inviare variabile a PHP da ciclo in JS Javascript 0
I Eecuzione di javascript in ciclo foreach php. PHP 7
B [PHP] formula e ciclo PHP 5
M [PHP] Come inserire codice html in un ciclo while PHP 2
T con oop creare un ciclo per una pagina dinamica html con php PHP 3
G [PHP] totale per ogni id di un ciclo PHP 1
S [PHP] Ciclo foreach su più array PHP 2
N [PHP] Controllare condizione ciclo While PHP 9
maxnegri [PHP] Eliminare risultati duplicati da ciclo foreach ottenuti da una select php mysqli PHP 18
N [PHP] Registrare variabili all'interno di un ciclo PHP 3
MattiaBL [PHP] Problema ciclo while PHP 3
elpirata [PHP][RISOLTO] Sommare gli importi estratti da un ciclo while PHP 3
C [PHP] Ciclo for dinamico PHP 14
gandalf1959 [PHP] query all'interno di un ciclo while PHP 3
Z [PHP] ciclo for PHP 9
valvasori [PHP] Problema ciclo for PHP 12
A [PHP] metodo di una classe per estrarre i dati con ciclo while PHP 1
H [PHP] Ciclo per calcolare i chilometri PHP 4
S [PHP] Recupero più dati da form realizzata ciclo FOR PHP 5
gandalf1959 [PHP] ciclo while non scrive dove dovrebbe... PHP 2
Monital [PHP] ciclo su un file json molto grande PHP 1
M [PHP] Errore in ciclo foreach PHP 1
G Ciclo if php per far comparire un pulsante solo nel caso in cui una variabile sia 0 PHP 2
S Ciclo PHP molto complesso PHP 2
B ciclo in PHP per creare numero progressivo PHP 2
S [risolto] Aiuto: ciclo php ( for / while). popolare select dinamicamente da array id. PHP 9
A [risolto] caricare con un ciclo For dei file PHP inclusi in una variabile array PHP 3
neo996sps PHP: problema con ciclo for PHP 1
S Problema ciclo php ed errore [object XMLHttpRequest] Ajax 0
W fare la somma di un valore estratto da un ciclo while Classic ASP 0
P Incrementare nodo in ciclo for-each XML 6
M UPDATE non aggiorna db se lo inserisco in un ciclo Database 1
V Ciclo for per Pulsante in JavaScript Javascript 7
O Ciclo non visualizzato PHP 1
M problema ciclo javascript Javascript 4
F Problema codice in un ciclo while PHP 2
T ciclo $.each non va jQuery 4
V Generare array da ciclo while e prendere valori casuali PHP 4
I tabella con ciclo, recupero dati PHP 3
Monital Problema con un ciclo for. PHP 1
M Problema con ciclo foreach per chiusura apertura div in base al numero di record in database PHP 1
minatore Ciclo while PHP 3
D ciclo while mi genera due campi vuoti PHP 5
K Problema con update di un database in un ciclo Classic ASP 1
P JAVA 8 Ciclo For all'interno di un altro Ciclo For Java 2
otto9due Problema inserimento ciclo foreach o while in variabile PHP 1
M Caricare più google maps con un ciclo Javascript 1
N Stranezza sul ciclo while PHP 1
M Aiuto su come procedere con un ciclo foreach PHP 4
A Tabella e ciclo for PHP 7

Discussioni simili