【问题标题】:Laravel Using Google Analytics - Use of undefined constantLaravel 使用 Google Analytics - 使用未定义的常量
【发布时间】: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


【解决方案1】:

.blade.php中访问analyticsData时的情况为例:

{{ analyticsData }}

在尝试访问 PHP 中的变量时省略 $ 会尝试访问具有相同名称的常量。在这种情况下(和大多数情况下),这是一个错字,并且从未定义过常量。错误消息可能有些含糊,但当您了解它试图做什么时才有意义。

要解决此问题,只需正确引用变量,包括 $

{{ $analyticsData }}

【讨论】:

    猜你喜欢
    • 2014-04-23
    • 1970-01-01
    • 1970-01-01
    • 2019-09-30
    • 1970-01-01
    • 1970-01-01
    • 2011-05-20
    • 1970-01-01
    相关资源
    最近更新 更多