+ Rispondi alla Discussione
Risultati da 1 a 4 di 4

Funzione Php

Ultimo Messaggio di Thedarkita il:
  1. #1
    User
    Data Registrazione
    Jan 2010
    Messaggi
    49

    Funzione Php

    Salve ragazzi volevo un chiarimento.

    Codice:
    public static function getEntityData($entityID) {
        $sql = "SELECT * FROM \"entity\" WHERE \"entityid\" = $entityID";
        $res = pg_query(DataManager::_getConnection(),$sql);
       if($res && pg_num_rows($res)) {
          return pg_fetch_assoc($res);
        }
          die("Failed getting entity $entityID");
        }
        return pg_fetch_assoc($res);
      }
    Nell'if, sia $res che pg_num_rows($res) sono entrambi true allora restituisce un array associativo pg_fetch_assoc($res).

    $res è una risorsa. Quindi se la risorsa punta a dei risultati restituisce true altrimenti false.

    Non mi è chiaro mentre pg_num_rows($res). Dovrebbe restituire il numero delle righe oppure -1 se non c'è nessun risultato. Infatti da php.net leggo:

    pg_num_rows: The number of rows in the result. On error, -1 is returned.

    Quindi da pg_num_rows dovrei avere 1,2,3 ecc numeri di righe oppure -1 in caso di nessun numero di righe. Ma questo significa che Php converte in true gli eventuali numeri di riga ed in false il -1?

  2. #2
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    Ciao bismark2005,
    lo 0 viene considerato come FALSE, mentre gli altri numeri(Anche i negativi) sono considerati come TRUE.
    -1 nel tuo codice è il caso di errore, nel caso in cui le righe siano pari a 0, verrà restituito 0(Che è quindi considerato come FALSE).

  3. #3
    User
    Data Registrazione
    Jan 2010
    Messaggi
    49
    Grazie thedarkita sei gentilissimo. Da quanto ho capito però in caso di errore -1 sarà considerato true. Quindi è come se il codice non contemplasse il caso dell'errore

  4. #4
    ModSenior L'avatar di Thedarkita
    Data Registrazione
    Aug 2006
    Località
    Messina
    Messaggi
    7,237
    Segui Thedarkita su Twitter Aggiungi Thedarkita su Google+ Aggiungi Thedarkita su Facebook Aggiungi Thedarkita su Linkedin Visita il canale Youtube di Thedarkita
    In realtà non dovrebbero esserci casi in cui pg_num_rows($res) restituisca -1 e $res sia diverso da false. Per cui direi che vada bene cosi com'è.

+ Rispondi alla Discussione

^ Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
  • Il codice BB è Attivato
  • Le faccine sono Attivato
  • Il codice [IMG] è Attivato
  • Il codice [VIDEO] è Attivato
  • Il codice HTML è Disattivato
  • Trackbacks Attivato
  • Pingback Attivato
  • Refback Attivato

SEO by vBSEO 3.6.0 PL2 ©2011, Crawlability, Inc.