ホームページ >バックエンド開発 >PHPチュートリアル >Laravel の応答とビュー
基本的な応答
//直接応答文字列
Route::get('example/test20', function(){
// return 'hello world';
});
// カスタマイズされた HTTP 応答
Route:: get ('example/test21', function(){
; ')->withCookie(Cookie::make('key', 'this is value'));
レスポンスリダイレクト
//レスポンスリダイレクト
Route::get('example/test24', function( ){
return Redirect::to('example/test21')->with('username', 'xiaoming');
});
戻りリダイレクト: :to('example/test21')-> /test25', function(){
'ユーザー名', 'xiaoming'); // 名前付きルートにリダイレクトします
return Redirect::route( 'login');
// 名前付きパラメータを使用して値を名前付きルートにリダイレクトします
return Redirect: :route('profile', array('user' => 1));
// 指定されたコントローラー メソッドにリダイレクトします
return Redirect::action('HomeController@index');
//指定されたコントローラー メソッドにリダイレクトし、パラメーターを渡すことができます
Return Redirect::action('UserController@profile', array('user' => 1)) ;
レスポンスビュー
//ビューへのレスポンスとパラメータを渡す
Route::get('example/test30', function(){
2 番目の方法
//return View::make('test30')- >with('name', 'xiaoming2');
// サブビューをビューに渡す
Route::get('example/test31', function(){
$data = array('name' =>) ; 'john');
/views/child/child_view.php に変数を渡すこともできます
View:: make('test30')->with($data)->nest('child' , 'child.child_view', $data);
});
ビュー コンポーネントまたはビュー コンポーザー
指定したデータを使用してビューを作成する場合は、ビュー コンポーネントを定義できます:
View::composer( 'プロフィール'、関数($view)
,'ダッシュボード')、関数($view)
$view->with('count', User::count()); View::composer('pro)ファイル」 , 'ProfileComposer');
ビュー コンポーネント クラスは次のように作成されます:
class ProfileComposer {
public function compose($view) using using using using using - ::count());}
特別な応答
// JSON 応答を作成します
Return Response::json(array('name' => 'Steve', 'state' => 'CA'))
// JSONP 応答を作成します
return Response::json(array('name' => 'Steve', 'state' => 'CA'))->setCallback(Input::get('callback'))
//ファイルのダウンロードResponse
return Response::download($pathToFile);
return Response::download($pathToFile, $name, $headers);
注: ファイルのダウンロードを管理するクラス ライブラリである Symfony HttpFoundation では、ファイル名が ASCII である必要があります。エンコードされた。
レスポンス マクロ、Response::macro を使用してレスポンスをカスタマイズします
Response::macro('caps', function($value)
{
Return Response::make(strtoupper($value));
});
macro メソッドは、マクロ名とクロージャを指定する 2 つのパラメータを受け入れます。この名前のマクロが Response クラスを通じて呼び出されると、クロージャが実行されます:
return Response::caps('foo');
app/start ディレクトリ内のファイルでマクロを定義できます。あるいは、マクロを別のファイルに整理し、そのファイルを開始ファイルに含めることもできます。
http://www.phpddt.com/php/laravel-response.html より転載