这是一个php数组,在某些对象中我只需要获取联系人 来自这个PHP标准数组的值。只接触值而不是名称 值如何从这个对象获得所有联系人的价值。我想要 只接触联系人密钥。
stdClass Object
(
[contactlist] => Array
(
[0] => {
contact = 4155553695;
name = "Kate Bell";
}
[1] => {
contact = 4085553514;
name = "Daniel Higgins";
}
[2] => {
contact = 8885551212;
name = "John Appleseed";
}
[3] => {
contact = 5555228243;
name = "Anna Haro";
}
[4] => {
contact = 7075551854;
name = "Hank Zakroff";
}
[5] => {
contact = 5556106679;
name = "David Taylor";
}
[6] => {
contact = 542222222222;
name = Deepak;
}
)
)
答案 0 :(得分:2)
您可以尝试使用此UPDATED解决方案
$result = array();
foreach ($object->contactlist as $k=>$v){
preg_match('/(\d+)/s', $v, $contact);
$result[] = $contact[0];
}
var_dump($result);
答案 1 :(得分:1)
您需要使用正则表达式来提取值。请尝试以下方法:
foreach ($obj->contactlist as $contactInfo) {
preg_match('~^\s*contact\s*=\s*(\d+);$~m', $contactInfo, $matches);
$contact = $matches[1];
echo $contact . '<br />';
}
它将匹配“contact = 123;”格式的字符串并提取匹配的数字。
在此处阅读更多内容:http://php.net/preg_match
preg_match - 执行正则表达式匹配
用法: int preg_match(string $ pattern,string $ subject [,array&amp; $ matches [,int $ flags = 0 [,int $ offset = 0]]])