在没有完整路径的情况下在视图中使用自定义帮助程序 - Laravel 5.1

时间:2015-07-29 12:24:31

标签: php laravel

我有一个截断字符串的方法。

StringHelper::truncate()

当我在视图中使用此方法时,找不到类StringHelper。我已将它添加到composer.json并完成了dump-autoload。

当我指定完整路径时,它会起作用:

\App\Http\Helpers\StringHelper

但我想有第一个选择。

我该怎么做? AppServiceProvider也许,但是怎么样?

2 个答案:

答案 0 :(得分:4)

Laravel 5.1的正确方法

  1. AppServiceProvider课程中创建Blade directive
  2. class AppServiceProvider extends ServiceProvider
    {
        public function boot()
        {
            Blade::directive('truncate', function ($expression) {
                return "<?php echo trim({$expression}); ?>";
            });
        }
    }
    
    1. 在视图中使用它:
    2. @truncate($string)
      

答案 1 :(得分:0)

回答Laravel 5

将帮助文件添加到&#34;文件&#34;你的composer.json的一部分(在你的应用程序的根目录中),你不需要每次都提供完整的路径:

"files": [
        "App/Http/Helpers/StringHelper.php"
      ],