![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
jak po wyłączeniu wyświetlania błędów: jak je przejąć żeby wysłać bądź zapisać w jakimś pliku? Przejrzałem sieć i jako że notice można przejąć to nie znalazłem Fatal error itd. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki za pomoc zaraz po testuje, tak myślałem że kiedyś coś podobnego mi się rzuciło tylko nie wiedziałem gdzie.
ps. Wszystko fajnie, ale co jeżeli mamy notica i fatal error, jak pobrać wszystkie a nie ostatni error? Ten post edytował szajens 25.01.2016, 22:11:13 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Inne błędy musisz łapać już przez error_handler
http://php.net/manual/en/function.set-error-handler.php To co Ci podałem łapie ostatni błąd który wywala skrypt (błędy fatal itp.) Błędy miękkie typu notice, warnind, deprecated lapiesz już ww. funkcją. Masz tam przykład jak je łapać. |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
właśnie zanim napisałeś wpadłem na tą funkcje, zastanawiałem się właśnie czy trzeba używać dwóch, ale zanim napisałem już odpowiedziałeś
![]() Cytat To co Ci podałem łapie ostatni błąd który wywala skrypt da się wyłapać pierwszy a nie ostatni? //edit: teraz wyłapuje mi normalnie pierwszy, coś wcześniej pokręciłem przy testowaniu, przy połączeniu 2 funkcji można całość przenieś np z ekranu do pliku i o to mi chodziło dzięki za pomoc Ten post edytował szajens 25.01.2016, 23:07:32 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) ![]() ![]() |
A czy przypadkiem od PHP7 nie wystarcza łapać wyjątków dziedziczących po Error? http://php.net/Error
-------------------- ★Mój blog || Okiem krytyka★
|
|
|
![]() ![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Comandeer mógłbyś rozwinąć myśl ? Jakiś przykład bo nie mogę se poradzić
![]() |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) ![]() ![]() |
Oczywiście syntaxy jest trudniej złapać, ale na to AFAIR metoda Pytona już pomoże ![]() -------------------- ★Mój blog || Okiem krytyka★
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Źle złapałem myśl, myślałem że jest od php 7 inna możliwość przejmowania błędów. Wyjątki już trochę poznałem ale do tego co chce uzyskać się nie nadają.
Potrzebuje wyłapać błędy jeżeli już będą, automatycznie. Po prostu zamiast wyświetlić błędy na ekranie chce je wysłać mailem ![]() Wydaje mi się że walenie wszędzie wyjątków to strata czasu i niepotrzebny kod. Ten post edytował szajens 26.01.2016, 22:02:30 |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) ![]() ![]() |
Cytat Wydaje mi się że walenie wszędzie wyjątków to strata czasu i niepotrzebny kod. Od PHP7 wszystkie błędy są z automatu wyjątkami dziedziczącymi po Error. -------------------- ★Mój blog || Okiem krytyka★
|
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
można je automatycznie wyłapywać? Bez pisania dla każdej funkcji coś w stylu
edit: chyba nie za bardzo łapie jeszcze logikę tego rozwiązania ale nie wyobrażam sobie pisania dla każdej funkcji wyjątku edit2: Rozumiem że set_exception_handler jest obiektowym odpowiednikiem funkcji podanej przez Pytona (register_shutdown_function)? Zauważyłem że zwraca to samo, jedyna różnica że nie trzeba wyłączać error_raporting Ten post edytował szajens 26.01.2016, 23:22:12 |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
raczej set_error_handler
tyle że przyjmuje 1 parametr |
|
|
![]()
Post
#13
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
wyjście:
Wiec Python jesteś jednak chyba w błędzie, choć raz ![]() rozumiem że w ten sposób mam to używać, że tak jest poprawnie, bo to że działa to mnie nie zadowala ![]() |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Wiesz nie testowałem tego więc to są moje domniemania
![]() |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 150 Pomógł: 4 Dołączył: 3.01.2010 Ostrzeżenie: (0%) ![]() ![]() |
Szukam ale nie mogę znaleźć jak w funkcji wygenerować błąd aby wyskoczył podczas jej użycia wskazując linie kodu a nie linie w funkcji, ale bez bloków try catch? Próbowałem trigger_error ale wywala mi w funkcji
edit: w sumie można użyć:
ale niema innego sposobu? Ten post edytował szajens 27.01.2016, 23:31:52 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 09:03 |