laravel - Request::getQueryString() 不带一些参数

标签 laravel laravel-5 laravel-routing laravel-request

我使用以下代码附加带有两个链接的查询字符串。但我想从查询字符串中排除分页的 page 参数。

<li><a href="/teachers?{{ Request::getQueryString()}}">Teachers</a></li>

<li><a href="/courses?{{ Request::getQueryString()}}">Courses</a></li>

有什么方法可以做到吗?我尝试了以下代码,但它生成错误。

<li><a href="/teachers?{{ Request::getQueryString()->except('page') }}">Teachers</a></li>

<li><a href="/courses?{{ Request::getQueryString()->except('page') }}">Courses</a></li>

最佳答案

好吧,getQueryString() 只是返回一个字符串。相反,您可以直接使用 Request::except() ,然后调用 http_build_query()生成查询字符串:

<li><a href="/teachers?{{ http_build_query(Request::except('page')) }}">Teachers</a></li>

请注意,如果您有 POST 值,这些值也会包含在内。如果您想避免这种情况,请执行以下操作:

<li><a href="/teachers?{{ http_build_query(array_except(Request::query(), 'page')) }}">Teachers</a></li>

关于laravel - Request::getQueryString() 不带一些参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28971692/

相关文章:

php - 具有多列主键的 Laravel 模型

Laravel 4.2 检查 whereIn 子句中的数组是否为空

regex - Laravel 不区分大小写的路由

php - Laravel fatal error : Fatal error: Interface 'Illuminate\Auth\Illuminate\Contracts\Auth\Factory' not found

mysql - Laravel Eloquent 选择区别于关系

laravel - vue使用CORS的问题

php - Laravel 5 在数据库/redis 中存储 session

php - Foreach() 和 each() 内存不足,分块不起作用

php - 如何删除 laravel 5 中的帖子资源?

带有查询参数的 Laravel URL