有没有一种切分字符串的方法,假设我有这个变量
$output=Country=UNITED STATES (US) &City=Scottsdale, AZ &Latitude=33.686 &Longitude=-111.87
我想以一种我想要拉动纬度和经度值的方式对其进行切片,以分离变量,subtok不起作用
发布于 2009-02-25 13:19:18
为此,不需要使用正则表达式;使用explode()
拆分字符串,首先按&
拆分,然后按=
拆分,您可以使用它有效地将其解析为一个漂亮的小数组,将名称映射到值。
发布于 2009-02-25 13:23:43
$output='Country=UNITED STATES (US) &City=Scottsdale, AZ &Latitude=33.686 &Longitude=-111.87';
parse_str($output, $array);
$latitude = $array['latitude'];
你也可以这样做
parse_str($output);
echo $latitude;
我认为使用数组更好,因为你不会到处创建变量,如果你不信任输入字符串,这可能会有潜在的危险(比如register_globals)。
发布于 2009-02-25 13:28:35
它看起来像是来自一个URL,尽管URL编码已经消失了。
我赞同使用explode()
或preg_split()
的建议,但您可能也会对parse_str()
感兴趣。
$output = "City=Scottsdale, AZ &Latitude=33.686 &Longitude=-111.87";
parse_str($output, $results);
$lat = $results['Latitude'];
$lon = $results['Longitude'];
https://stackoverflow.com/questions/587872
复制