0

我有一个包含类似数据的 PHP 变量:

$var = "
Name: Tom
Age: 26
Location: London

Name: Mike
Age: 28
Location: New York

Name: Sunny
Age: 24
Location: Tokyo";

我只想提取位置,并将它们存储在数组中,例如:

Array
(
    [0] => London
    [1] => New York
    [2] => Tokyo
)

现在,凭借我对 PHP 的简单经验,我正在使用“ LOL,Don't Laugh.. ”来完成这项工作:

$location = array_merge(preg_replace('/^Location: /','',preg_grep('/^Location: /',explode("\n", $var))));

但我相信,会有一种更好的流程(可能使用preg_split)来实现更快、更明智并且可能更少的系统过载。

请告知..提前谢谢.. :-)

4

1 回答 1

1
preg_match_all('/Location: (.+)/', $var, $m);
print_r($m[1]);

之所以有效,是因为默认情况下,点与换行符不匹配。

于 2012-06-13T04:12:17.417 回答