我想创建帮助函数,以避免在Laravel视图之间重复代码。例如:
view.blade.php
<p>Foo Formated text: {{ fooFormatText($text) }}</p>
它们基本上是文本格式化函数。我应该如何定义全局可用的帮助函数,如fooFormatText()?
我想创建帮助函数,以避免在Laravel视图之间重复代码。例如:
view.blade.php
<p>Foo Formated text: {{ fooFormatText($text) }}</p>
它们基本上是文本格式化函数。我应该如何定义全局可用的帮助函数,如fooFormatText()?
当前回答
在app/Helper/Helpers.php中创建Helpers.php
namespace App\Helper
class Helpers
{
}
添加作曲家和作曲家更新
"autoload": {
"classmap": [
"database/seeds",
"database/factories",
"database","app/Helper/Helpers.php"
],
"psr-4": {
"App\\": "app/"
},
"files": ["app/Helper/Helpers.php"]
},
在控制器中使用
use App\Helper\Helpers
视图中使用 修改config->app.php文件
'aliases' => [
...
'Helpers' => 'App\Helper\Helpers'
],
视图中调用
<?php echo Helpers::function_name(); ?>
其他回答
在dir bootstrap\autoload.php中
require __DIR__.'/../vendor/autoload.php';
require __DIR__.'/../app/Helpers/function.php'; //add
添加这个文件
app\Helpers\function.php
首先在App\Helpers\Helper.php中创建你的Helper文件/类 就像:
<?php
namespace App\Helpers;
class Helper {
// Your customer public function
}
然后在Composer.json中定义它 在交通量 然后运行composer dump-autoload
对于我的Laravel项目中的自定义助手库,我在我的Laravel/App目录中创建了一个名为Libraries的文件夹,在Libraries目录中,我为不同的助手库创建了各种文件。
在创建我的助手文件后,我简单地将所有这些文件包含在我的composer中。这样的Json文件
...
"autoload": {
"classmap": [
"database"
],
"files": [
"app/Libraries/commonFunctions.php"
],
"psr-4": {
"App\\": "app/"
}
},
...
和执行
composer dump-autoload
这里有一些很好的答案,但我认为这是最简单的。 在Laravel 5.4(以及之前的版本)中,你可以在方便的地方创建一个类,比如App/Libraries/Helper.php
class Helper() {
public function uppercasePara($str) {
return '<p>' .strtoupper($str). '<p>;
}
}
然后你可以像这样简单地在你的Blade模板中调用它:
@inject('helper', \App\Libraries\Helper)
{{ $helper->drawTimeSelector() }}
如果你不想使用@inject,那么就把'uppercasePara'函数设置为静态的,并像这样将调用嵌入到你的Blade模板中:
{{ \App\Libraries\Helper::drawTimeSelector() }}
不需要别名。Laravel自动解析具体类。
在app/Helper/Helpers.php中创建Helpers.php
namespace App\Helper
class Helpers
{
}
添加作曲家和作曲家更新
"autoload": {
"classmap": [
"database/seeds",
"database/factories",
"database","app/Helper/Helpers.php"
],
"psr-4": {
"App\\": "app/"
},
"files": ["app/Helper/Helpers.php"]
},
在控制器中使用
use App\Helper\Helpers
视图中使用 修改config->app.php文件
'aliases' => [
...
'Helpers' => 'App\Helper\Helpers'
],
视图中调用
<?php echo Helpers::function_name(); ?>