尝试传递数据以查看

时间:2016-03-21 13:44:02

标签: php mysql laravel

我正在尝试将数据从我的控制器传递到我的视图,但是我收到了一个未定义的变量错误。 usersID是我MySQL表中的一列。

这是我控制器中的代码

$arrayWithCount = DB :: table("users_has_activities")
-> where("usersID", "=", 19)
-> pluck("usersID");

$countNumber = sizeof($arrayWithCount);

return view('pages.progress', ['countNumber' => $countNumber]);

我还尝试了以下return语句,但没有成功

return view::make('pages.progress') -> with('countNumber', $countNumber);

我也试过扭转冰球和哪些条款没有任何成功,我没有寄予厚望,反转他们会解决问题,但我想我会尝试任何方式。以下是刀片文件中的相关代码。

 <?php echo $countNumber; ?> 

这是我目前的错误

Undefined variable: countNumber

3 个答案:

答案 0 :(得分:1)

你的代码看起来很好,如果dd()没有停止执行控制器,那么另一个控制器正在执行。所以仔细检查你的路线和控制器。

答案 1 :(得分:0)

首先sizeof应为sizeOf,并且只是count()的别名。大多数人都希望count超过sizeOf,因为sizeOf(在许多语言中)会指示与磁盘大小相关的内容。

Anywho,即pluck返回一个集合,你可以直接从集合中访问count()

您可以简单地执行以下操作:

$countNumber = $arrayWithCount->count();

旁注:除非您在刀片服务器中使用<?php ?>有特殊原因,否则最好使用{{}}

答案 2 :(得分:0)

我在一个我没有调用的方法中拥有所有控制器代码,因此该变量从未传递给刀片文件。该方法设置为在按下按钮后调用,确定一切正常。感谢Alexey的帮助。