我有一些提取网址的PHP代码。我提取的对象是以下形式:
WEBSITE?flage=2&fgast=48&frat=1&sort=D&fsrc=2&wid=bf&page=1&id=16123012&source=searchresults
现在在PHP中我调用了这个对象$linkHREF
我想只提取id元素并将其放入数组中(我正在引导此过程以获取多个id)
所以命令是:
$detailPagePathArray = explode("id=",$linkHREF); #Array
现在问题是输出包括id标记之后的内容,因此输出如下:
echo $detailPagePathArray[0] = WEBSITE?flage=2&fgast=48&frat=1&sort=D&fsrc=2&w
echo $detailPagePathArray[1] = bf&page=1&
echo $detailPagePathArray[2] = 16123012&source=searchresults
现在问题很明显,它首先拿起"id"
标记中的"wid"
并将其切割到那里,但是第二个问题是它还会在实际之后拾取所有材料"id"
。我只对选择"16123012"
感兴趣。
您能解释一下我如何修改我的爆炸命令,将其指向我感兴趣的特定标记吗?
感谢。
答案 0 :(得分:2)
使用为此目的提供的内置功能。
例如:
<?php
$url = 'http://www.example.com?flage=2&fgast=48&frat=1&sort=D&fsrc=2&wid=bf&page=1&id=16123012&source=searchresults';
$qs = parse_url($url);
parse_str($qs['query'], $vars);
$id = $vars['id'];
echo $id; // 16123012
?>
参考文献:
答案 1 :(得分:0)
如果您确定在对象中只获得了一次&amp; id = 123456,那么
$linkHREF = "WEBSITE?flage=2&fgast=48&frat=1&sort=D&fsrc=2&wid=bf&page=1&id=16123012&source=searchresults";
$str = current(explode('&',end(explode('&id', $linkHREF,2))));
echo "id" .$str; //output id = 16123012