Way to get and edit GET variables in order to make hyperlinks
Let's say that I have URL like somefile.php?sort=id&way=desc
.
I want to write a function (or use already made one) that would let me add next variables to URL and set which I want to delete.
I thought about something like function editGetVar("$add","$leave")
where $add
would be array with new variables to add to URL and $leave
would be array with variables that must stay in URL.
Example:
somefile.php?sort=id&way=desc&buyer=retailer
and I want to delete "buyer" and add "action", then the a href
would look like this:
<a href="somefile.php?sort=id&way=desc&action=edit">
开发者_C百科I would appreciate any ideas from you.
Use http_build_query:
<?php
unset($_GET['buyer']);
$_GET['action'] = 'edit';
print '<a href="somefile.php?' . http_build_query($_GET) . '">!!</a>';
?>
I believe you can split up the URI with $parts = parse_url($my_uri)
, manipulate the resulting array and stick it back together with the http_build_query
function.
Example:
$url = '?';
foreach( $_POST as $key => $value )
{
$url .= $key . '=' . $value . '&';
}
You can add/edit a variable as:
$_GET[ 'sort' ] = 'asc';
You can delete as:
unlink( $_GET[ 'sort' ] );
You can wrap it into a function yourself ;)
精彩评论