开发者

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 ;)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜