时间:2024-03-30
本函数的作用是为URL添加新的查询参数并获取到新的URL。使用本函数可以重建URL或者向URL添加新的查询参数,也可以获取到包含查询参数的完整URL。可以通过添加键值对或者关联数组的方式来设置查询参数的值,同时可以通过将键的值设置为false来删除URL中的查询参数。如果不指定第二或第三个参数,则函数将使用$_SERVER的值来省略旧查询或者URI。
// 参数为单独的字符串值 add_query_arg($param1, $param2, $old_query_or_uri); // 参数为键=>值对数组 add_query_arg(array('key1' => 'value1', ...), $old_query_or_uri);
参数 数据类型 是否必需 描述 默认值 $param1 整数|字符串|数字 是 新的查询字符串或数组 无 $param2 整数|字符串|数字 否 新的查询字符串值,如果$param1是关联数组,此参数为原URL 无 $old_query_or_uri 字符串|布尔值 否 原查询字符串或URL $_SERVER[REQUEST_URI]
函数将返回新的URL查询字符串。
假设当前在WordPress页面:“http://blog.example.com/client/?s=word”
// 下面将输出'/client/?s=word&foo=bar' echo add_query_arg('foo', 'bar'); // 下面将输出'/client/?s=word&foo=bar&baz=tiny' $arr_params = array('foo' => 'bar', 'baz' => 'tiny'); echo add_query_arg($arr_params);
在很多时候,你可能需要为当前页面添加查询参数。在这种情况下,你可以将需要修改的URL作为最后一个参数传入函数。
// 下面将输出'http://blog.example.com/2009/04/16/?hello=world' echo add_query_arg('hello', 'world', 'http://blog.example.com/2009/04/16/');
如果你需要修改文章页面,你可以使用get_permalink()函数作为最后一个参数。
// 下面将输出带有查询字符串'?hello=there'的id为9的文章链接。 echo add_query_arg('hello', 'there', get_permalink(9));
通过关联数组,可以删除或添加查询字符串:
$query = 'http://example.com/link?foo=bar'; $new_query = add_query_arg(array('foo' => false, 'baz' => 'qux'), $query); // 结果:http://example.com/link?baz=qux
Copyright © 2019-2024 thinkphp.xyz