サイト制作に関するメモ書き

HOME > PHP > Laravelのヘルパー関数のパスとURLを使ってみる

Laravelのヘルパー関数のパスとURLを使ってみる

Laravelのヘルパー関数の中から、パスとURLを使ってみます。

サンプルコード

まずはヘルパー関数のパス関連を使ってみます。

app\Http\routes.php

Route::get('/path', function () {
	return view('path.index');
});

resources\views\hoge\index.blade.php

<ul>
	<li>{!! app_path() !!}</li>
	<li>{!! base_path() !!}</li>
	<li>{!! base_path('vendor/bin') !!}</li>
	<li>{!! config_path() !!}</li>
	<li>{!! database_path() !!}</li>
	<li>{!! public_path() !!}</li>
	<li>{!! resource_path() !!}</li>
	<li>{!! storage_path() !!}</li>
</ul>

以下のような形で出力されました。

http://localhost:8000/path

C:\xxxxx\projectName\app
C:\xxxxx\projectName
C:\xxxxx\projectName\vendor/bin
C:\xxxxx\projectName\config
C:\xxxxx\projectName\database
C:\xxxxx\projectName\public
C:\xxxxx\projectName\resources
C:\xxxxx\projectName\storage
app_path() appディレクトリへのパスを取得。
base_path() プロジェクトルートのパスを取得。
config_path() configディレクトリへのパスを取得。
database_path() databaseディレクトリへのパスを取得。
public_path() publicディレクトリへのパスを取得。
resource_path() resourcesディレクトリへのパスを取得。
storage_path() storageディレクトリへのパスを取得。

 

次に先ほどのページにヘルパー関数のURL関連を表示させてみます。

PHP

引数にコントローラーを指定するメソッドがあるので、ダミーとしてHogeControllerを追加します。

Route::get('/path', function () {
	return view('path.index');
});
Route::get('/hoge', ['as' => 'hoge', 'uses' => 'HogeController@getIndex']);

追加したHogeControllerの中身です。

app\Http\Controllers\HogeController.php

<?php

namespace App\Http\Controllers;

class HogeController extends Controller
{
	public function getIndex()
	{
		return view('hoge.index');
	}
}

PHP

<ul>
	<li>{!! action('HogeController@getIndex') !!}</li>
	<li>{!! action('HogeController@getIndex', ['id' => 1]) !!}</li>
	<li>{!! asset('img/photo.jpg') !!}</li>
	<li>{!! secure_asset('foo/bar.zip') !!}</li>
	<li>{!! route('hoge') !!}</li>
	<li>{!! url('/path') !!}</li>
</ul>

以下のような形で出力されました。

http://localhost:8000/path

http://localhost:8000/hoge
http://localhost:8000/hoge?id=1
http://localhost:8000/img/photo.jpg
https://localhost:8000/foo/bar.zip
http://localhost:8000/hoge
http://localhost:8000/path
action(‘controller@action’) 指定したコントローラとアクションからURLを生成。
asset(‘path’) 現在のリクエストのスキーマ(HTTPかHTTPS)を使って、引数のパスへのURLを生成。
secure_asset(‘path’) HTTPSを使い、引数のパスへのURLを生成。
route(‘routeName’) 指定された名前付きルートへのURLを生成。
url(‘path’) 指定されたパスへのURLを生成。

 

【参考サイト】

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

▲PAGE TOP