2012-01-13 66 views
0

我有以下代碼:PHP對象數組

<?php if($count >= 10){ 
    do this 
}?> 

使用此代碼:

<?php print_r($count); ?> 

我看到的$內容算作

Array ([0] => stdClass Object ([COUNT(*)] => 12)) 

問題是:我如何獲得在我的IF語句中使用的對象數組中的12?

+0

該值的get()方法? – Corubba 2012-01-13 02:18:39

+0

我不會將$ count發送到我的頁面。 $ count是包含MySQL查詢的變量。 – Sweepster 2012-01-13 03:56:52

回答

2
if ($count[0]->{'COUNT(*)'} > 10) { 
    ... 
} 

請注意,$count看起來非常像SQL查詢的結果。在這種情況下,只需將SELECT COUNT(*) FROM ...替換爲SELECT COUNT(*) AS foocount FROM ...即可。此外,你可以讀入一個數組而不是一個對象。

+0

你說得對,它是SQL查詢的結果。 count(*)和count(*)AS foocount之間的區別是什麼? – Sweepster 2012-01-13 03:55:35

+3

@Jonathan您可以使用'as newname'重命名列,這也適用於由'count'等函數生成的列。這將允許你用更自然的'$ count [0] - > countfoo'來訪問單元格,並且你不需要這些花括號的東西。 – phihag 2012-01-13 04:00:59

+0

我明白了。謝謝! – Sweepster 2012-01-14 02:32:39