Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Problem z wyjątkami
Capellini
post
Post #1





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 16.10.2007

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


  1. <?php
  2. function wikipedia($sl)
  3.  {
  4.    try
  5.    {
  6.      file_get_contents("http://www.pl.wikipedia.org/wiki/". $sl);
  7.      return true;
  8.    }
  9.  
  10.    return false;
  11.  }
  12. ?>


Funkcja ma zwrócić wartość true, jeżeli z funkcją file_get_contents nie ma żadnych kłopotów i wartość false, jeżeli jest jakiś błąd.

Nie jestem jeszcze zbyt obeznany w wyjątkach w PHP więc pomóżcie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Capellini
post
Post #2





Grupa: Zarejestrowani
Postów: 70
Pomógł: 0
Dołączył: 16.10.2007

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


Ok.

Ale kod blooregard'a niestety nie działa bo (pomijając już małe błędy typu brak zakończenia nawiasu) wyrzuca mi błąd składni: unexpected T_RETURN, expecting T_CATCH więc czy ten catch nie powinien być zaraz po try? Zrobiłem tak, ale wtedy jest co prawda komunikat "Błąd. Nie udało sie pobrac czegos tam" i funkcja co prawda zwraca false, ale wypisuje także ten błąd, więc wygląda to tak:
Cytat
Warning: file_get_contents(): HTTP request failed! HTTP/1.0 403 Forbidden in E:\Moje\Najnowsze\funkcje.php on line 37 Warning: file_get_contents(http://www.pl.wikipedia.org/wiki/da): failed to open stream: No error in E:\Moje\Najnowsze\funkcje.php on line 37 Błąd. Nie udało sie pobrac czegos tam


Ja chcę żeby po prostu, jak wystąpi jakiś błąd, funkcja tylko zwróciła false i żeby nie wypisywało Warning: file_get_con... chcę żeby po prostu nie traktowało tego jako błąd. Czy da się tak zrobić?

Chodzi o to, że jak to zobaczy, że file_get_contents nie działa jak trzeba, to nie ma panikować, bo wszystko jest ok i ma tylko zwrócić false, a cały skrypt ma działać dalej.

Ten post edytował Capellini 31.01.2009, 20:06:03
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 30.09.2025 - 18:59