辅助函数未加载 laravel 5 - 调用未定义的函数

n1k*_*41l 3 php laravel composer-php laravel-5

我在 Laravel 5 中加载帮助程序文件并从视图调用函数时遇到问题。下面是我如何尝试在 L5 项目中设置助手的快速概述。

  1. 在 app/Http 中创建了一个 helpers.php 文件;
  2. 帮助程序文件包含一个基本函数,用于生成页面标题。

    public function full_title($title)
    {
         $base_title = 'Social Tracking Application';
    
         if (isset($title) && $title != ''){
            $comp_title = $title . " | " .  $base_title;    
         } else {
           $comp_title = $base_title;
         }
    
    return $comp_title;
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 更新了composer.json以自动加载新的帮助程序文件。

    "autoload": {
    "classmap": [
        "database"
    ],
    "psr-4": {
        "App\\": "app/"
    },
    "files":["app/Http/helpers.php"]
    
    Run Code Online (Sandbox Code Playgroud)

    },

  4. 从终端运行composer dump-autoload。

经过这些步骤后,我的印象是我可以使用视图和控制器中的助手。因此,我使用以下命令在主布局视图中调用了新的辅助函数:

<title> full_title($title)  </title>
Run Code Online (Sandbox Code Playgroud)

但是,当我导航到任何页面时,我都会收到 FatalErrorMessage Call to Undefined Function full_title。(请注意,该消息通常位于标题栏中,因此我将其移动到正文标记以查看错误消息)。

我不明白我在这里做错了什么,我见过人们以类似方式使用自定义帮助程序文件的其他示例,但我的似乎不起作用,我是否遗漏了一些明显的东西?

我正在管理家园。

完整代码库:https ://github.com/n1k41l/SocialTrak/tree/middleware-currentUser

n1k*_*41l 6

我已经设法自己解决了这个问题,问题是我将 Helpers 文件创建为 php 类。帮助程序文件应该只是一个 php 文件 - 带有函数而不是带有函数的类...(一旦我发现它,就会发现明显的错误:S)。