我有以下网址
/index.php?option=com_zoo&task=item&item_id=292&Itemid=283
我想用变量替换item_id
的值。我一直在检查一些PHP函数,如split
和parse_str
,但我不知道如何让它工作。
答案 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;
?>