php截取第N个“_”前面的字符串

$a='open=2_id=1486_uhash=e8c9f158fac0204303f4784c'我怎么截取$a中的open=2,id=1486,uhash=e8c9f... $a='open=2_id=1486_uhash=e8c9f158fac0204303f4784c'
我怎么截取$a中的open=2,id=1486,uhash=e8c9f158fac0204303f4784c,然后赋值给三个变量:$open,$id,$uhash
说明:其中id=1486也可能是id=11486,也就是位数不确定

最好就是能有一个什么函数能截取第一个"="和第一个"_"之间的字符串。
正确的方法如下:谢谢楼下的两位!

<?php
$a="open=".$_GET["open"];
$b = explode('_',$a);
foreach($b as $v)
{
$temp = explode('=',$v);
$$temp[0] = $temp[1];
}

echo "open=".$open;
echo "</br>";
echo "id=".$id;
echo "</br>";
echo "uhash=".$uhash;
echo "</br>";

?>
展开
 我来答
hk_yuhe
2011-01-15 · TA获得超过131个赞
知道答主
回答量:63
采纳率:0%
帮助的人:29.6万
展开全部
#!/bin/php
<?php
$str= 'open=2_id=1486_uhash=e8c9f158fac0204303f4784c';
list($open,$id,$uhash)=explode('_',$str);
?>

exlode函数用于将字符串按指定字符分割成数组
而list结构用于给多个变量赋值

注:楼上代码explode函数用错了吧~分隔符应该是第一个参数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
人信物丰dt
2011-01-15 · 超过20用户采纳过TA的回答
知道答主
回答量:81
采纳率:0%
帮助的人:46.5万
展开全部
$a_array=explode($a,'_');
然后用foreach
foreach($a_array as $v)
{
echo $v;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式