当前位置: 首页 > 面试题库 >

在分页期间保留url参数

卞坚成
2023-03-14
问题内容

分页时有什么方法可以保留我的GET参数。

我的问题是我有几个不同的网址,即

questions.php?sort=votes&author_id=1&page=3

index.php?sort=answers&style=question&page=4

我应该如何在分页类中创建指向页面上具有不同页码的页面的链接,但仍然保留网址的其他部分?


问题答案:

简而言之,您只需解析URL,然后在最后添加参数,或者如果参数已经存在,则将其替换。

$parts = parse_url($url) + array('query' => array());
parse_str($parts['query'], $query);
$query['page'] = $page;
$parts['query'] = http_build_str($query);
$newUrl = http_build_url($parts);

此示例代码需要用于和的PHP
HTTP模块
。后者可以替换为第一个,如果没有安装模块,则可以使用PHP用户空间实现。http_build_urlhttp_build_strhttp_build_query

另一种选择是使用Net_URL2提供了各种URL操作接口的软件包:

$op = new Net_URL2($url);
$op->setQueryVariable('page', $page);
$newUrl = (string) $op;

它更加灵活和富有表现力。



 类似资料:
  • 问题内容: htaccess url重写后,保持URL的参数正常工作时出现问题。 我的htaccess重写如下: 意思是: 显示为 出于某种原因,当我在URL的末尾添加a 时,即使显示的URL中存在这些参数,也无法使用php检索这些参数。 为什么不传递变量? 问题答案: 您需要附加[QSA](查询字符串附加)标签。尝试 参见http://httpd.apache.org/docs/2.2/mod/

  • 我已经用php为我的网站实现了分页系统,唯一的问题是: 假设存在分页的url是,

  • 问题内容: 我有一个gridview,其中包含一个复选框列,也使用分页。当我在第一页中选中某些复选框并导航到第二页并在第二页中选中另一个复选框时,我在第一页中选中的选项不会保留在那里。分页期间可以保留复选框的值吗? Gridview的代码是 编辑: 用于记住gridview中所选选项的扩展,请检查此链接Selgridview 感谢 bool.dev 问题答案: 您可以使用会话/ cookie来存储

  • 我正在我的项目中使用yii2小部件datetimepicker。我想在提交页面后保留它的价值。 如何保留选定的日期时间值?任何帮助将高度赞赏。

  • 我用Spark streaming Kinesis开发了应用程序。我在2015年10月30日启动了我的应用程序,它运行正常。我看到今天(2015-11-02)我重新启动了应用程序,它开始处理2015-11-02。为什么?保留期?在文档中 msgstr"您可以使用增加保留时间操作将保留时间延长至168小时" 我尝试使用文档中描述的命令增加 aws运动增加流保留期--流名称XXXX--保留期小时数16

  • 问题内容: 我正在制作一个bash脚本,该脚本将打印并将复杂的参数传递给另一个外部程序。 我该如何打印原始参数: 使用并删除可能引起不良结果的单引号。我的脚本不需要解析每个参数。我只需要打印/记录参数字符串,然后将其确切地传递给另一个程序。 我知道我可以使用类似的东西来避免引号, 但是我不能保证用户会这样做。 问题答案: 在将参数传递到脚本之前,引号已被删除,因此保留它们为时已晚。您可以做的是在将