含有'%'特殊字符的Laravel路线

时间:2017-10-26 11:44:23

标签: php laravel

我的路线是:

Route::get('/busca-de-produtos/{produto?}', ['as' => 'busca-de-produto', 'uses' => 'ProdutoController@buscaProdutos'])->where('produto', '(.*)');

这适用于几乎所有内容,但如果我搜索:'某些产品多2%的文字',它就不起作用。

我尝试改为:

Route::get('/busca-de-produtos/{produto?}', ['as' => 'busca-de-produto', 'uses' => 'ProdutoController@buscaProdutos'])->where('produto', '((?s).*)');

但它没有奏效。无论如何我能做到吗?

1 个答案:

答案 0 :(得分:0)

在进行搜索时,您可能无法正确编码网址。 您的网址应如下/busca-de-produtos/Some%20Product%202%25%20more%20text

此外,如果您接受.* produto,我认为您可以安全地放弃->where()过滤器。