问题详情:字符串为 $str = "abc&stat=100&remain=1589";
我只想提取到remain=后面的数字 1589,该如何实现呢?希望php大神指导一下。
<?php
//方法一
$str = "abc&stat=100&remain=1589";
$start = strrpos($str, '=');
echo substr($str , $start+1);
//方法二
$str = "abc&stat=100&remain=1589";
$arr = explode('=', $str);
echo $arr[2];
?>
//方法一
$str = "abc&stat=100&remain=1589";
$start = strrpos($str, '=');
echo substr($str , $start+1);
//方法二
$str = "abc&stat=100&remain=1589";
$arr = explode('=', $str);
echo $arr[2];
?>
取值的方法有很多种,简单的给出2个
望采纳Thx
温馨提示:答案为网友推荐,仅供参考
第1个回答 2014-09-16
$out = array();
$str = "abc&stat=100&remain=1589";
// 第一种方式, 使用 parse_str 函数
// (在字串是一个 url参数字串的时候 使用)
parse_str($str,$out);
var_dump($out['remain']);
// 第二种方式, 使用关键字串进行 explode 分隔
$out = explode('remain=', $str);
var_dump($out[1]);
// 第三种方式, 使用正则
$out = array();
preg_match('/remain=(\d+)/i', $str, $out);
var_dump($out[1]);
// 第四种方式, 使用字符串截取substr及 strrpos 函数
$out = substr($str, strrpos($str, 'remain=') + strlen('remain='), strlen($str));
var_dump($out);
$str = "abc&stat=100&remain=1589";
// 第一种方式, 使用 parse_str 函数
// (在字串是一个 url参数字串的时候 使用)
parse_str($str,$out);
var_dump($out['remain']);
// 第二种方式, 使用关键字串进行 explode 分隔
$out = explode('remain=', $str);
var_dump($out[1]);
// 第三种方式, 使用正则
$out = array();
preg_match('/remain=(\d+)/i', $str, $out);
var_dump($out[1]);
// 第四种方式, 使用字符串截取substr及 strrpos 函数
$out = substr($str, strrpos($str, 'remain=') + strlen('remain='), strlen($str));
var_dump($out);
第2个回答 2014-09-16
<?php
$str = "abc&stat=100&remain=1589";
$new = explode('remain=',$str);
echo $new[1];
?>
$str = "abc&stat=100&remain=1589";
$new = explode('remain=',$str);
echo $new[1];
?>
第3个回答 2014-09-16
$str="abc&stat=100&remain=1589";
$index=strpos($str,'remain=');
$newstr=substr($str,$index+7);
echo $newstr;
$index=strpos($str,'remain=');
$newstr=substr($str,$index+7);
echo $newstr;
第4个回答 2014-09-16
echo substr($str, (strpos( $str,"remain=")+strlen("remain="))) ;