【发布时间】:2019-02-10 19:13:12
【问题描述】:
使用未定义的常量 analyticsData - 假定为“analyticsData”(这将在 PHP 的未来版本中引发错误)(查看:/home/vagrant/apps/rt2018/resources/views/records.blade.php)(查看: /home/vagrant/apps/rt2018/resources/views/records.blade.php)"
我的 records.blade.php 文件
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Hello Analytics - A quickstart guide for JavaScript</title>
</head>
<body>
<h1>Hello Analytics</h1>
{{analyticsData}}
</body>
</html>
我的控制器
use Spatie\Analytics\Period;
use Analytics;
public function showMonthlyReport($site_id, $report_id){
$reports = Report::where('report_id', $report_id)->firstOrFail();
$analyticsData = Analytics::fetchMostVisitedPages(Period::days(7));
return view('records', compact('site_id', 'report_id', 'reports', 'analyticsData'));
}
这是我到 records.blade.php 的刀片文件路径
<a href="{{route('Reports',['site_id'=>$report->site_id, 'report_id'=>$report->report_id])}}">view</a>
我试图将任何变量放入我的控制器中。例如$wow = 1;
在我的控制器上的返回视图上添加“哇”
把它放在我的刀片上 {{wow}} 给了我同样的错误。
这之前有效,但我不知道会发生什么。
任何放在我刀片上的{{object}} 都会给我这个错误。 Use of undefined constant (any declared object)。当我尝试删除/注释掉 analyticsData 以及我的刀片文件时,它正在工作。它在 Laravel 5.2 和 PhP 7.2 上工作,现在我使用的是 Laravel 5.4。我知道这不是因为版本。你知道如何解决这个问题吗?提前谢谢!
【问题讨论】:
-
{{analyticsData}}应该是{{ $analyticsData }},尽管它可能无法正确输出;但这是一个不同的问题。 -
@TimLewis 同样的问题。
-
这没有意义。我刚刚在我的 Laravel 5.4 应用程序中尝试过;
{{ products }}- 未定义常量,{{ $products }}-[](是一个空数组)。您确实添加了$对吗?我不只是调整间距(因为间距无关紧要,只是为了便于阅读)。 -
@TimLewis 我都试过了,但我得到了同样的错误。它以前工作,但我不知道发生了什么。就像我的 {{ any }} 坏了或者我不知道如何修复它。
-
您正在调整正确的
.blade.php文件?如果没有您将anything定义为全局常量,我不知道{{ anything }}会起作用的任何实例;你没有引用$,所以你应该(并且正在)得到Undefined constant ...
标签: php laravel laravel-blade