Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何使用$#u SERVER[';REQUEST#u URI';]写入新URL而不是无限循环?_Php - Fatal编程技术网

Php 如何使用$#u SERVER[';REQUEST#u URI';]写入新URL而不是无限循环?

Php 如何使用$#u SERVER[';REQUEST#u URI';]写入新URL而不是无限循环?,php,Php,我有一个php页面,想写一个基于当前URL的链接。像这样: $alias = substr(strrchr($_SERVER['REQUEST_URI'], "/"), 1); print '<a href="'.$alias.'&sort=name">Sort by Name</a>'; $alias=substr(strrchr($\u SERVER['REQUEST\u URI'],“/”,1); 打印“”; 在页面上,链接被写入,这非常有效 但一旦我

我有一个php页面,想写一个基于当前URL的链接。像这样:

$alias = substr(strrchr($_SERVER['REQUEST_URI'], "/"), 1);

print '<a href="'.$alias.'&sort=name">Sort by Name</a>';
$alias=substr(strrchr($\u SERVER['REQUEST\u URI'],“/”,1);
打印“”;
在页面上,链接被写入,这非常有效

但一旦我进入页面,页面上的链接就会被写入。此外,如果我单击其他排序链接之一,我将得到

那太傻了。有没有更好的方法来生成我的链接?或者在重用$alias之前,我应该做些什么来清理它吗?复杂性:有一些变量(如
&category=34
&title=spa
)我不想从URL中删除,因此我不能将其清除回
/listings


(我正在使用Drupal,如果其中内置了秘密变量,那也会很酷。)

一种常见的策略是执行以下操作:

http_build_query(array_merge($_GET, array("sort" => "name")))

计算新的查询字符串。

Ooh,很有趣。这并不完全是开箱即用的(它将url生成为“domain.com/q=listings&sort=name”——Drupal的简单url代码和干净的url代码以及我自己的附加参数的奇怪混合体),但绝对值得研究!