2013-05-16 60 views
0

我有我創建這樣一個對象:PHP OOP導航對象

$conn=new Classes_dbFactory("MySQLi", DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); 

我再建一個ResultSet對象:

$res=$conn->getResultSet("MySQLi", $sql); 

如果我var_dump$res我得到:

object(Classes_MysqlImprovedResult)#3 (4) { ["_current:protected"]=> 
NULL ["_key:protected"]=> NULL ["_valid:protected"]=> NULL 
["_result:protected"]=> object(mysqli_result)#4 (0) { } } 

我不知道的是如何導航這兩個對象。

我知道mysqli_result對象包含來自我的數據庫的X行數據。我可以使用limitIterator執行foreach循環來獲取所有的值,並且這可以正常工作。

但是,我只想從結果集的第一行得到一個值,所以使用foreach看起來有點OTT。

換句話說,我想要做的這個與對象等效的,但我沒有使用對象或mysqli的工作經驗:

​​

在此先感謝。

+0

1行('mysql_fetch_assoc')超過了頂部?真? –

+0

對不起,我的意思是我想要與這個對象等價。 – user2320402

+0

protip:'echo'

'; var_dump($foo); echo '
'' –

回答

1

所以使用的mysqli_result的「fetch_array」的方法:

$row = $result->fetch_array(MYSQLI_ASSOC); 
echo $row['foo']; 
+0

謝謝,但我得到'調用成員函數fetch_array()在非對象' – user2320402

+0

$結果需要是您在原始問題中共享var_dump()的東西 – TML

0

我不知道你使用的數據庫的包裝,但我發現a similar post用谷歌搜索,它看起來像你必須做一些像這個:

$res = $conn->getResultSet("MySQLi", $sql); 
$res->next(); 
$row = $res->current(); 

echo $row['foo'];