2016-03-07 27 views
0

我在查詢中有一個匹配的行。Laravel 5.2 count()給出不同的echo,dd()和var_dump結果

echo $result100

dd($result)1

var_dump($result)int(1) int(0) int(0)

這是怎麼回事?

相關的代碼:

$results= DB::table('answers')->where('qid', $question->id)->where('answer', 'yes')->count(); 
+0

Thrussel,如果我的回答很有幫助,請註冊並選擇最好的答案來感謝我的時間。 –

回答

0

原來我是個白癡,它在一個foreach語句中,迭代了3次。

3

echo只是印刷$result陣列/對象瓦爾。這就像你使用toString()。結果爲'1,0,0',您實際上將其視爲100.

var_dump向您顯示$ result中的三個變量。 dd()顯示你和對象。點擊'1'附近的瀏覽器中的箭頭,它將展開$result的內容。

+0

有道理。這個查詢中的0,0個整數是什麼? –

0

echo打印輸出,在這種情況下輸出將是你的查詢語句的字符串100的數,所以你用echo打印字符串時

var_dump()print_r() PHP函數打印對象和數組,在那裏你不能使用echo打印這些文件,但var_dump()函數也會打印鍵和數值的數據類型。

這個例子:

$a = array(1, 2, array("a")); 
var_dump($a); 
echo '<br/>------------------------------------------<br/>'; 
print_r($a); 

和輸出將是:

enter image description here

dd()是laravel輔助函數,涉及到轉儲和死,你可以讀到這個here