Windowsで作る - PHPプログラミングの開発環境
このページへのアクセス 今日: 2 / 昨日: 4 総計: 1883
— y2sunlight 2020-07-29
Apricot ドキュメント に戻る
目次
ボイラープレートは良く使うフレームワークのコードパターンを関数として使用できるようにしたヘルパー関数です。
env() は、環境変数を取得する関数です。第1引数にはキーを指定して下さい。第2引数はオプションでデフォルト値を指定することができます。環境変数は /your-project/.env ファイルの中に key=value の形式で保存されています。詳細は 環境設定 を参照して下さい。
env()
/your-project/.env
key=value
$value = env('APP_NAME', $default);
app() は、アプリケーション変数を取得する関数です。第1引数にはドット表記キーを指定します。。第2引数はオプションでデフォルト値を指定することができます。アプリケーション変数は /your-project/app.php ファイルの中に連想配列で保存されています。詳細は app.phpファイル を参照して下さい。
app()
/your-project/app.php
$value = app('auth.expires_sec', $default);
config() は、構成変数を取得する関数です。第1引数にはドット表記キーを指定します。第2引数はオプションでデフォルト値を指定することができます。この設定ファイルは /your-project/config/setting の下に機能毎に保存されます。構成変数の設定については 設定管理 を参照して下さい。
config()
/your-project/config/setting
$value = config('monolog.level', $default);
abort() は、HttpException をスローする関数です。通常はこの例外が発生すると集約例外ハンドラーが補足してエラーページを表示します。この関数については「コアの例外クラス」を参照して下さい。
abort()
HttpException
abort(400);
project_dir() は、第1引数が省略された場合、プロジェクトディレクトリーの完全パス名を返します。第1引数にその子ディレクトリーを指定すると、子ディレクトリーまでを含めた完全パス名を返します。
project_dir()
$dir = project_dir(); // '/your-project' を返します。 $dir = project_dir('temp'); // '/your-project/temp' を返します。
他の関数も同様に、Apricotの特定のディレクトリーを、またはその子ディレクトリーの完全パス名を返します。各ディレクトリーに関しては 「ディレクトリー構成」を参照して下さい。
url() は、第1引数が省略された場合、アプリケーションのURLを返します。第1引数にパスを指定すると、パスまでを含めたURLを返します。アプリケーションのURLは、環境変数 APP_URL から取得されますが、それを設定していない場合は、publicディレクトリーのURLのパス部分になります。
url()
APP_URL
$url = url(); // アプリケーションのURL({your-app-url})を返します。 $url = url('js'); // '{your-app-url}/js' を返します。 $url = url('js/jquery-3.3.1.min.js'); // '{your-app-url}/js/jquery-3.3.1.min.js' を返します。
url_ver() は、アプリケーションのバージョンを含むファイルURLを返します。URLの末尾にアプリケーションのバージョン番号を付加する点を除いて url() と同じです。バージョン番号は、環境変数 APP_VERSION から取得します。この関数は、アセットファイル用のURLを取得する場合に使用して下さい。
url_ver()
APP_VERSION
$url = url('js/main.js'); // '{your-app-url}/js/main.js?v=1.0.0' を返します。
route() は、第1引数が省略された場合、ルーティングパスのルートを返します。第1引数にサブパスを指定すると、サブパスまでを含めたルーティングパスを返します。ルーティングパスのルートは、publicディレクトリーのURLのパス部分と同じです。
route()
$path = route(); // ルートパス({your-app-path})を返します。 $path = route('User/{$id}/edit'); // '{your-app-path}/User/1/edit' を返します。
controllerName() と actionName() は、それぞれ現在のコントローラー名とアクション名を返します。例えば、ユーザコントローラーのindexアクションがインボークされている場合は、以下のような結果になります。
controllerName()
actionName()
$controller = controllerName(); // 'UserController' を返します。 $action = actionName(); // 'index' を返します。
__() は、各言語用のメッセージを取得する関数です。第1引数にはドット表記キーを指定します。パラメータ付きのメッセージの場合は、第2引数に [':param'=>'value'] の形式の連想配列を指定します。詳しくは「多言語化」を参照して下さい。
__()
[':param'=>'value']
$message = __('messages.home.msg'); // パラメータ付きメッセージの取得 $message = __('messages.home.hello', [':name'=>'Scott']);
inputLabels() は、入力変数のラベル配列を返します。第1引数には言語メッセージのドット表記キーを指定します。この関数は、バリデーション失敗時のメッセージを作成することを手助けします。詳しくは、「バリデーションの使用例の入力変数のラベリング」を参照して下さい。
inputLabels()
$labels = inputLabels('messages.user.create');
Input::get()
QueryString::get()
Session::get()
Flash::get()
Cookie::get()
input() は、フォームの送信データ(入力変数)を取得する関数です。第1引数には変数のキーを指定します。第2引数はオプションでデフォルト値を指定することができます。
input()
$account = input('account');
他の関数も同様に、第1引数には変数のキーを、第2引数はオプションでデフォルト値を指定することができます。リクエスト変数に関しては 「リクエスト」を参照して下さい。
old() は、フラッシュで渡された前回の入力値を取得する関数です。第1引数は入力変数と同じキーを、第2引数はオプションでデフォルト値を指定します。以下はHTMLテンプレート内での old() の例です。このように、データ編集ページの場合、通常は第2引数にはモデルから取得したテンプレート変数を渡します。
old()
<input type="text" name="account" id="account" value="{{old('account',$user->account)}}">
back() は、前回のURIを取得する関数です。通常は以下のように redirect() 関数と共に使用し送信元のページに戻ります。
back()
redirect()
return redirect(back());
errors() は、前ページからフラッシュで渡されたエラーバッグを取得する関数です。以下はHTMLテンプレート内での errors() の例です。エラーバッグのcount()メソッドでエラーの数を取得し、エラーがあれば、その内容を出力しています。
errors()
@if($errors->count()) @foreach($errors as $key=>$value) <div class="alert">{{$value}}</div> @endforeach @endif
render() は、テンプレート名(string)とテンプレート変数(array)を指定してHTMLをレンダリングしてRenderResponseオブジェクトを返す関数です。
render()
RenderResponse
return render("user.index", ["users"=>$users]);
redirect() は、リダイレクト先URIを指定して RedirectResponse オブジェクトを返す関数です。
RedirectResponse
return redirect(route("user/{$id}/edit"));
これらの関数の詳細は「レスポンスのボイラープレート」を参照して下さい。