サーチ…
前書き
カスタムヘルパーを追加することで、開発スピードを向上させることができます。そのようなヘルパー関数を書くときに考慮すべきことがいくつかあります。したがって、このチュートリアルです。
備考
ちょっとした指針:
- サービスプロバイダが2回呼び出されたときの例外を防ぐために、関数定義をチェック(
function_exists
)に入れました。 - 代わりの方法は、
composer.json
ファイルからヘルパーファイルを登録することです。 laravelフレームワーク自体からロジックをコピーすることができます。
document.php
<?php
if (!function_exists('document')) {
function document($text = '') {
return $text;
}
}
helpers.phpファイルを作成し、 app/Helpers/document.php
すると仮定しましょう。あなたは1つのファイルに多くのヘルパーを置くことができます(これがLaravelのやり方です)、名前で分割することもできます。
HelpersServiceProvider.php
次に、サービスプロバイダを作成しましょう。 app/Providers
下に置いてみましょう:
<?php
namespace App\Providers;
class HelpersServiceProvider extends ServiceProvider
{
public function register()
{
require_once __DIR__ . '/../Helpers/document.php';
}
}
上記のサービスプロバイダはヘルパーファイルを読み込み、カスタム関数を自動的に登録します。 providers
下のconfig/app.php
このHelpersServiceProviderを登録してください:
'providers' => [
// [..] other providers
App\Providers\HelpersServiceProvider::class,
]
つかいます
これで、関数document()
コード内のどこでも、たとえばブレードテンプレートで使用できます。この例では、引数として受け取ったのと同じ文字列のみを返します
<?php
Route::get('document/{text}', function($text) {
return document($text);
});
今度はブラウザの/document/foo
に行きます( php artisan serve
またはvalet
使用してください)。これはfoo
を返します。
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow