![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 12.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
Analizując mysqli_connect() a szczególnie
uzycie mysqli_connect_errno() i nie rozumiem dlaczego w przykładach dla stylu OBJECTOWEGO używana jest funkcja nieobjektowa: mysqli_connect_errno(): http://pl.php.net/manual/pl/mysqli.connect.php Czyli dla: Kod $mysqli = new mysqli("localhost", "my_user", "my_password", "world"); Jest tak: Kod if (mysqli_connect_errno()) { exit("Connect failed: ".mysqli_connect_error()); } A dlaczego nie tak?: Kod if ($mysqli->connect_errno) { exit("Connect failed: ".$mysqli->connect_error); } Albo tak: Kod if (!$mysqli) { exit("Connect failed: ".$mysqli->connect_error); } Czy to taki skrót myślowy czy ja nie kumam objektów? Ten post edytował neotec 13.04.2008, 16:38:21 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
A jak powiem że moim zdaniem to było Ctrl+C Ctrl+v, to się zdziwisz?
W ogóle tam masz brak konsekwencji w przykładach, są miejsca gdzie spr. czy połączenie się powiodło jest robione przez sprawdzenie czy był błąd, a nie czy zwrócił null (choć moim zdaniem nie powinno nigdy zwracać null, tylko rzucić wyjątkiem... ale to dopiero raczkuje w PHP) -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
i te "<BR>" wogole nie powinny tu byc...
-------------------- ET LINGUA EIUS LOQUETUR IUDICIUM
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Po prostu rób to porządnie, nie zawsze dobrym pomysłem jest naśladowanie innych.
-------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 10 Pomógł: 0 Dołączył: 12.04.2008 Ostrzeżenie: (0%) ![]() ![]() |
Trochę sam sobie odpowiem, może ktoś potwierdzi albo i nie.
Ale chyba zrozumiałem że taka wersja z manulal jest jednak logiczna. Bo, gdy: konstruktor w postaci $mysqli = new new mysqli() nie nawiąże połączenia, to instancja objektu $mysqli w ogóle nie powstanie, więc nie można odwołac się do jej właściwości. Jedynie proceduralna "globalna" funkcja mysqli_connect_errno() trzyba gdzies tam, swoją flagę że operacja zakończyła się nie powodzeniem. Czy dobrze kombinuje? ______________________________________________________ Nie chcę tworzyć nowego wątku, ale proszę znawców do mysql a szczególnie od mysqli o pomoc w drugim temacie: "Singleton nad mysqli a słuszność metody close()" forumphp.nq.pl/index.php?showtopic=92125 Ten post edytował neotec 13.04.2008, 18:17:56 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
I to jest powód dla którego powinien lecieć wyjątek a nie tylko null.
Ogólnie powinieneś sprawdzić czy "new mysqli()" zwraca instancje obiektu, czy null, jak null to dopiero pobierasz błąd... (a obiektowość ma zlikwidować nadmiar if'ów jak widać w PHP mają swoją wizję...) -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 23:30 |