我的查询中有一个匹配的行。
echo $result
给出 100
dd($result)
给出 1
var_dump($result)
给出 int(1) int(0) int(0)
这是怎么回事?
相关代码:
$results= DB::table('answers')->where('qid', $question->id)->where('answer', 'yes')->count();
echo
只是打印 $result
数组/对象变量。就像您使用toString()
。结果是“1,0,0”,您实际上看到的是 100。
var_dump
显示 $result 中的三个变量。 dd()
显示您和对象。单击浏览器中“1”附近的箭头,它将展开 $result
的内容。
原来我是个白痴,它在 foreach 语句中并迭代 3 次。
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);
输出将是:
dd()
是一个与 dump 和 die 相关的 Laravel 辅助函数,你可以在 here 阅读相关内容