Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL]Co oznacza @ przy wywołaniiu funkcji w Mysql
Forum PHP.pl > Forum > Przedszkole
michal_2
Jest taki przykład:

  1. <?php
  2.  
  3. $link = @mysqli_connect("localhost", "nonexisting_user", "");
  4.  
  5. if (!$link) {
  6. printf("Can't connect to localhost. Errorcode: %d\n", mysqli_connect_errno());
  7. }
  8. ?>


źródło: http://php.activeventure.com/function/m/fu...nect-errno.html

co oznacza @ przy wywołaniu funckji?
kefirek
Znak @ przed funkcją powoduje tłumnie Bledu czyli w przypadku Bledu funkcji nie wyświetli ci się błąd.
cojack
kefirek w tym problem że nie masz racji, bo błąd mu się wyświetli jeżeli funkcja zwróci błąd. Ot co.

@ tłumi błąd podczas wykonywania funkcji, czyli gdy parser php dojdzie do tej linijki, postara się ją wykonać i okaże się że jest coś nie tak, powinno z buta wywalić błąd na ekranie, Ty znakiem @ tłumisz ten błąd i dopiero sprawdzasz czy błąd występuje w if, i jeżeli tak to wyświetlasz komunikat z błędem.

Ot co cała filozofia.
webdice
UP: Sam swoim wpisem negujesz to co piszesz później. Błąd funkcji się nie wyświetli, a to jest w ifie to inna bajka.
cim
Witam,

może kompromisowo ja napiszę, że operator '@' przed nazwą funkcji tłumi wyświetlenie błędu. Błąd będzie, ale PHP nie wypisze w przeglądarce żadnego ze swoich standardowych komunikatów - żeby wiedzieć czy błąd wystąpił trzeba będzie sprawdzić if`em etc.

Pozdrawiam
webdice
Cytat(cim @ 26.12.2009, 15:48:39 ) *
(...) może kompromisowo ja napiszę, że operator '@' przed nazwą funkcji tłumi wyświetlenie błędu. Błąd będzie, ale PHP nie wypisze w przeglądarce żadnego ze swoich standardowych komunikatów - żeby wiedzieć czy błąd wystąpił trzeba będzie sprawdzić if`em etc. (...)


Tylko że to już było napisane. Zamykam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.