使用 echo 或 var_dump 循环打印给出三个值,但 dd() 只给出第一个值

问题描述 投票:0回答:3

我的查询中有一个匹配的行。

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();
php laravel echo dd var-dump
3个回答
3
投票

echo
只是打印
$result
数组/对象变量。就像您使用
toString()
。结果是“1,0,0”,您实际上看到的是 100。

var_dump
显示 $result 中的三个变量。
dd()
显示您和对象。单击浏览器中“1”附近的箭头,它将展开
$result
的内容。


0
投票

原来我是个白痴,它在 foreach 语句中并迭代 3 次。


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);

输出将是:

dd()
是一个与 dump 和 die 相关的 Laravel 辅助函数,你可以在 here

阅读相关内容
© www.soinside.com 2019 - 2024. All rights reserved.