2016-06-29 14 views
1

Ich habe eine Abfrage in MySQL, die nur 1 Ergebnis zurückgeben wird. Das ist eine Id-Nummer. Ich benutzte PDO :: FETCH_OBJ und ich erhielt ein Array, das nur 1 Ergebnis anstelle einer Zeichenfolge enthält. siehe untenphp PDO-Objekt zu string

public function getOrderTerritory($orders_id){ 
     $this->db->query(" 
     SELECT 
     territory_id_fk 
     FROM orders 
     WHERE orders_id = :orders_id"); 

     //bind method from my database just to prevent some injection. dont mind this 
     $this->db->bind(':orders_id', $orders_id); 

     //Assign result, the single() is a database method that basically does $this->stmt->fetch(PDO::FETCH_OBJ); 
     $result = $this->db->single(); 
     return $result; 

    } 

wenn ich $ result var_dump ich

bekommen
object(stdClass)#23 (1) { ["territory_id_fk"]=> string(1) "2" } 

aber ich will nur

"2" statt sehen. So kann ich $ result übergeben, um andere Methoden auszuführen. gerade jetzt bekomme ich Array zu String Conversion-Fehler.

+2

Warum verwenden Sie PDO :: FETCH_OBJ, wenn Sie den Skalarwert einer einzelnen Spalte benötigen? –

+0

Ich lerne damit, ich verstehe noch nicht alle PDO-Optionen. Gibt es einen PDO :: FETCH-Typ, der stattdessen String zurückgibt? – codenoob

+0

Viel Spaß: [PHP Data Objects] (http://php.net/manual/en/book.pdo.php) – FirstOne

Antwort