Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]Czas generowania skryptu.
Mike122
post 13.07.2007, 18:59:56
Post #1





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


Witam wiem, że czas generowania całego skryptu mogę określić dzięki funkcji set_time_limit" title="Zobacz w manualu PHP" target="_manual jednak czy da się w PHP zrobić tak, aby określić czas generowania jakiegoś konkretnego kawałka skryptu, jeśli przekroczy ten czas zostanie wyświetlony komunikat, że przekroczono dostępny limit czasu a dalsza część kodu (już niezwiązana z tym kawałkiem) zostanie wygenerowana normalnie.
Proszę o jakieś porady przykłady czy tutorial...
Pozdrawiam.


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
flv
post 13.07.2007, 19:04:28
Post #2





Grupa: Zarejestrowani
Postów: 130
Pomógł: 1
Dołączył: 29.06.2007

Ostrzeżenie: (0%)
-----


Zczytuj funkcją microtime() czas w którym wykonywany jest początek i koniec tej części kodu, odejmuj drugą wartość od pierwszej i sprawdzaj w if'ie czy ta wartość jest większa od limitu czasu.
Go to the top of the page
+Quote Post
Mike122
post 13.07.2007, 19:16:25
Post #3





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


Więc:
  1. <?php
  2. //Przed skryptem
  3. $script_start = microtime(true);
  4.  
  5. //Treść skryptu
  6.  
  7. //Koniec skryptu
  8. $script_end = microtime(true);
  9.  
  10. //i zaokrąglenie do sekund
  11. round($script_end - $script_start, 4);
  12. ?>


I co dalej z if? Bo już nie mam pomysłu.


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
Moli
post 13.07.2007, 19:21:28
Post #4





Grupa: Zarejestrowani
Postów: 662
Pomógł: 45
Dołączył: 26.03.2007
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $ile = round($script_end - $script_start, 4) ;
  3.  
  4. if ( $ile > $dopuszczalny_czas ) {
  5. echo 'error' ;
  6. }
  7. ?>
Go to the top of the page
+Quote Post
Mike122
post 13.07.2007, 19:25:54
Post #5





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


~Moli ale skrypt się wykona... I dopiero wtedy wyświetli error z wykonanym skryptem...

Ten post edytował Mike122 13.07.2007, 19:26:32


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
flv
post 13.07.2007, 20:13:12
Post #6





Grupa: Zarejestrowani
Postów: 130
Pomógł: 1
Dołączył: 29.06.2007

Ostrzeżenie: (0%)
-----


Nigdzie nie pisałeś że skrypt ma się nie wykonać w takim przypadku, pisałeś tylko że ma wyświetlić błąd.
Czas wykonania skyptu nie jest znany przed jego wykonaniem, więc raczej nic takiego nie istnieje.
Go to the top of the page
+Quote Post
Mike122
post 13.07.2007, 20:17:55
Post #7





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 12.04.2006

Ostrzeżenie: (0%)
-----


To w JavaScript czy też Ajax może jakoś się da?


--------------------

Największy błąd ze wszystkich błędów to nie słuchać dobrych rad. Nikt nie jest doskonały i nie należy się obrażać za konstruktywną krytykę.
Go to the top of the page
+Quote Post
Kicok
post 14.07.2007, 08:38:44
Post #8





Grupa: Zarejestrowani
Postów: 1 033
Pomógł: 125
Dołączył: 17.09.2005
Skąd: Żywiec

Ostrzeżenie: (0%)
-----


To zależy od tego co to za skrypt ma się tyle czasu wykonywać. Jeśli to jakaś pętla, to możesz sprawdzać czas w jej wnętrzu. Jeśli masz tam funkcje fsockopen, cURL, czy inne, którym da się ustawić timeout, to ustawiasz timeout smile.gif


--------------------
"Sumienie mam czyste, bo nieużywane."
Go to the top of the page
+Quote Post
-Qp3k-
post 9.05.2008, 09:30:44
Post #9





Goście







Może buferuj?
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 08:41