Mel*_*ans 29 url query-string laravel laravel-4 laravel-routing
有没有人知道是否可以在Laravel中使用URL查询.
例
我有以下路线:
Route::get('/text', 'TextController@index');
Run Code Online (Sandbox Code Playgroud)
该页面上的文本基于以下url查询:
http://example.com/text?color={COLOR}
Run Code Online (Sandbox Code Playgroud)
我将如何在Laravel内接近这个?
Kry*_*ten 34
对的,这是可能的.试试这个:
Route::get('test', function(){
return "<h1>" . Input::get("color") . "</h1>";
});
Run Code Online (Sandbox Code Playgroud)
并通过去打电话给它http://example.com/test?color=red
.
当然,您可以通过额外的参数来扩展它,以满足您内心的需求.试试这个:
Route::get('test', function(){
return "<pre>" . print_r(Input::all(), true) . "</pre>";
});
Run Code Online (Sandbox Code Playgroud)
并添加一些参数:
http://example.com/?color=red&time=now&greeting=bonjour`
Run Code Online (Sandbox Code Playgroud)
这会给你
Array
(
[color] => red
[time] => now
[greeting] => bonjour
)
Run Code Online (Sandbox Code Playgroud)
cam*_*ase 32
对于未来的访问者,我使用下面的方法> 5.0
.它利用Laravel的Request
类,可以帮助保持业务逻辑出你的routes
和controller
.
示例URL
admin.website.com/get-grid-value?object=Foo&value=Bar
Run Code Online (Sandbox Code Playgroud)
routes.php文件
Route::get('get-grid-value', 'YourController@getGridValue');
Run Code Online (Sandbox Code Playgroud)
YourController.php
/**
* $request is an array of data
*/
public function getGridValue(Request $request)
{
// returns "Foo"
$object = $request->query('object');
// returns "Bar"
$value = $request->query('value');
// returns array of entire input query...can now use $query['value'], etc. to access data
$query = $request->all();
// Or to keep business logic out of controller, I use like:
$n = new MyClass($request->all());
$n->doSomething();
$n->etc();
}
Run Code Online (Sandbox Code Playgroud)
有关从请求对象检索输入的更多信息,请阅读文档.
查询参数使用如下:
use Illuminate\Http\Request;
class ColorController extends BaseController{
public function index(Request $request){
$color = $request->query('color');
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
52375 次 |
最近记录: |