$categories = DB::table('categories')->select('categoryid')->get();
foreach ($categories as $category)
{
$categoryid = $category->categoryid;
die($categoryid);//i am getting blank result here
}
var_dump($category->categoryid);
之后
我得到了int(5)
为什么我没有在categoryid
中获得5
的值?
答案 0 :(得分:0)
如果查看manual of php,您会发现var_dump会同时显示类型和值。
void var_dump ( mixed $expression [, mixed $... ] )
此功能显示有关包含类型和值的一个或多个表达式的结构化信息。递归地探索数组和对象,并使用缩进的值来显示结构。
获取int(5)
是正常的,这意味着$category->categoryid
的类型为int
,$category->categoryid
的值为5
。
答案 1 :(得分:0)
die()
只是exit()
的引用。也就是说,死亡和退出都完全相同。
According to the manual for exit():
如果status是一个字符串,则此函数在退出之前打印状态。
如果status是整数,则该值将用作退出状态 而不是印刷。退出状态应该在0到254的范围内 退出状态255由PHP保留,不得使用。状态0 用于成功终止程序。
因为您输出的是整数,所以它不会显示数字5.相反,您应该执行以下操作:
die((string)$categoryid);
通过将其强制转换为字符串,您强制die
构造将值作为字符串输出,而不是将其作为状态代码返回。
另一种选择是echo
类别ID,然后退出:
echo $categoryid;
exit