替换urls变量值

时间:2012-02-16 16:12:10

标签: php url variables

我有以下网址

/index.php?option=com_zoo&task=item&item_id=292&Itemid=283

我想用变量替换item_id的值。我一直在检查一些PHP函数,如splitparse_str,但我不知道如何让它工作。

3 个答案:

答案 0 :(得分:4)

$url = '/index.php?option=com_zoo&task=item&item_id=292&Itemid=283';

$query = explode('?', $url); // Split the URL on `?` to get the query string
parse_str($query[1], $data); // Parse the query string into an array

echo $data['item_id']; // 292

$newValue = 300;
$data['item_id'] = $newValue; // Replace item_id's value

$url = $query[0].'?'.http_build_query($data); // rebuild URL

echo $url; // '/index.php?option=com_zoo&task=item&item_id=300&Itemid=283";

答案 1 :(得分:0)

尝试使用str_replace功能。如果您的网址存储在变量$url中,而您想要替换的变量存储在$ItemID中的Itemid:

$url = str_replace("Itemid", $ItemID, $url);

答案 2 :(得分:0)

* 这是做到这一点的确切方法*

 <?php
    $url = '/index.php?option=com_zoo&task=item&item_id=292&Itemid=283';
    $explodeData =parse_url($url);
    $dataReplace = str_replace('item_id','replacedvariable',$explodeData['query'],$count);
    $changedUrl = $explodeData['path']."?".$dataReplace;
    echo $changedUrl;
    ?>