#1 2012-08-17 10:32:11

G7K5
Člen
Registrován: 2010-07-22
Příspěvky: 56

Re: "set_time_limit" nefunguje

Potřebuji nastavit kratší dobu, aby se script, když trvá zbytečně dlouho, přerušil.
Bohužel mi to nefunguje.

if( !ini_get('safe_mode') ) {set_time_limit(10);......kód.......;set_time_limit(20);}

max_execution_time = 20 je na serveru nastaveno napevno a nedá se touhle funkcí měnit?

Offline

#2 2012-08-17 12:25:01

G7K5
Člen
Registrován: 2010-07-22
Příspěvky: 56

Re: "set_time_limit" nefunguje

bartama napsal:

Není náhodou !ini_get('safe_mode') ověření, jestli je puštěný safe_mode?

Pokud ano, je to jasné, safe mod je vypnutý.

To je opravdu jasné, proto by to mělo snad fungovat,ne?
set_time_limit nefunguje právě při zapnutém SM.Tenhle zápis je ale IF NOT SAFE MODE.

Offline

#3 2012-08-17 13:20:03

G7K5
Člen
Registrován: 2010-07-22
Příspěvky: 56

Re: "set_time_limit" nefunguje

Ano, error reporting je zapnutý.Chyby to nehlásí, script se normálně spustí,ale časový limit nefunguje.Jedná se  o vrácení header status code.
Změnit max_execution_time nelze ani směrem dolů?To je přece z pohledu serveru jedině dobře,ne?

Offline

#4 2012-08-29 19:28:40

G7K5
Člen
Registrován: 2010-07-22
Příspěvky: 56

Re: "set_time_limit" nefunguje

Jak to teda je?
Safe mod je vypnutej,funkce je povolena,syntax je dobrej...tak proč to zde nefunguje??

Někde jsem narazil na to, že to asi souvisí se špatným umístěním directivy:
php_admin_value max_execution_time "20"
-pokud je umístěna v konfiguračním souboru Apache(VH),tak to nefunguje,pokud v php.ini, tak by to mělo fungovat
Je to tento případ?

Offline

#5 2012-08-29 20:03:13

JF
Endora rádce
Místo: ....nice u Plzně
Registrován: 2010-06-22
Příspěvky: 11,894

Re: "set_time_limit" nefunguje

Keďže nieje možné meniť max_execution_time tak je jasné že v kóde set_time_limit() fungovať nebude. Viac v tom kóde nevidím, keďže ste sem viac nenapísali takže nedokážem zistiť kde robíte chybu.


Ján Fačkovec - Endora.cz by Webglobe
Email, Web, Webadmin, Webmail, Nápověda, Ceník

Offline

#6 2012-08-30 13:34:37

G7K5
Člen
Registrován: 2010-07-22
Příspěvky: 56

Re: "set_time_limit" nefunguje

1/Pokud zde tedy set_time_limit nefunguje, proč si myslíš, že někde dělám chybu já??
Chyby to nevypisuje žádné a kód jede - už jsem výše psal
kód=
print_r(get_headers($web));

-když získávání headeru trvá příliž dlouho, chci to ustřelit(a to nefunguje) a pokračovat v provádění dalšího kódu

2/Pokud jsem to špatně pochopil a s_t_l zde funguje,,můžeš sem napsat nějakej funkční příklad použití set_time_limit?Možná jsem tuto funkci špatně pochopil a použití je proto chybné.

max_execution_time" je maximální hranice.Set_time_limit má nastavit libovolný časový limit do pevně nastavené hranice max_execution_time   (aspoň podle mne)

3/Neodpověděl jsi mi na druhou část dotazu

Offline

#7 2012-08-30 20:15:30

JF
Endora rádce
Místo: ....nice u Plzně
Registrován: 2010-06-22
Příspěvky: 11,894

Re: "set_time_limit" nefunguje

max_execution_time je pevne stanovený podľa varianty webhostingu a preto ho nieje možné nijak definovať zo strany užívateľa a preto ani funkcia set_time_limit() nič nevykoná lebo nemá oprávnenie na zmenu danej premennej.

Ak potrebuješ prerušiť priebeh niečoho môžeš to stopovať napr pomocou microtime a ak to prekročí nejakú hodnotu tak to proste stopneš a beh skriptu bude pokračovať ďalej.

Ohľadne toho či to je zapísané v php.ini to netuším, na toto ti musí odpísať len sám admin.


Ján Fačkovec - Endora.cz by Webglobe
Email, Web, Webadmin, Webmail, Nápověda, Ceník

Offline

#8 2012-08-30 23:54:54

G7K5
Člen
Registrován: 2010-07-22
Příspěvky: 56

Re: "set_time_limit" nefunguje

nj,ale potom je divný, proč f-ce set_time_limit není mezi zakázanými.To bude asi opravdu nastavený v cfg Apache.
Nic,zkusím ten microtime,díky za tip.

Offline

Zápatí

Založeno na FluxBB | CZ a SK