Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Prosta nakladka na PDO, wszelka krytyka mile widziana
q.michal
post
Post #1





Grupa: Zarejestrowani
Postów: 111
Pomógł: 1
Dołączył: 24.12.2013

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


Niestety wszystko sie tu nie zmiascilo, wiec zalaczam wrzutke do krytyki (IMG:style_emoticons/default/baaasmiley.gif)

http://wklej.org/hash/a36cc42ed55/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




if(!isset($this->pdo)) {
daj poprostu
if(!$this->pdo) {

if(!$this->stmt instanceof \PDOStatement) {
Nigdzie z zewnatrz nie ustawiasz stmt wiec albo t bedzie PDOStatement albo nic. Daj poprostu
if(!$this->stmt) {

No i jesli nie ma stmt to powinien leciec wyjatek a nie pusta tablica. Skoro ktos robi fetchAll a wczesniej nie zrobil execute to jest to blad

Gdy juz zamienisz to wyjatki to takie kody jak ten
if(!$this->stmt instanceof \PDOStatement) {
return false;
}
maja byc w oddzielnej funkcji i tylko wywolujesz te funkcje ktora rzuci wyjatkiem. nie ma sensu wszedzie duplikowac takich kodow

ta funkcja

  1. public function isConnected() {
  2. $this->clearError();
  3. if(!$this->pdo instanceof \PDO) {
  4. $this->setError('08003', 'SQLSTATE[08003] Connection does not exist');
  5. return false;
  6. }
  7. return true;
  8. }


powinna wygladac poprostu tak

  1. public function isConnected() {
  2. $this->clearError();
  3. return $this->pdo ? true: false;
  4. }
  5.  

Nie ma tam najmniejszego sensu ustawiac errora bo to nie zaden error
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: 9.10.2025 - 11:21