如何从此阵列收到电子邮件?
array(16) {
[0]=> string(273) ""guid":"","contactId":"44","contactName":"_, atri","email":"atri_megrez@yahoo.com","emaillink":"http:\/\/mrd.mail.yahoo.com\/compose?To=atri_megrez%40yahoo.com","isConnection":false,"connection":"","displayImg":null,"msgrID":"atri_megrez","msgrStatus":"","isMsgrBuddy":122},"
[1]=> string(260) ""guid":"","contactId":"100","contactName":"afrin","email":"fida_cuty123@yahoo.com","emaillink":"http:\/\/mrd.mail.yahoo.com\/compose?To=fida_cuty123%40yahoo.com","isConnection":false,"connection":"","displayImg":null,"msgrID":"","msgrStatus":"","isMsgrBuddy":false},"
[2]=> string(258) ""guid":"","contactId":"101","contactName":"afrin","email":"waliyani@yahoo.com","emaillink":"http:\/\/mrd.mail.yahoo.com\/compose?To=waliyani%40yahoo.com","isConnection":false,"connection":"","displayImg":null,"msgrID":"","msgrStatus":"","isMsgrBuddy":false},"
}
答案 0 :(得分:2)
看起来该数组中的每个字符串都是JSON数据。
如果您使用的是现代版本的PHP,则可以使用json_decode()
将数据转换为可用格式。
foreach($array as $string) {
$json = json_decode($string);
echo "Email = {$json->email}\n";
}
答案 1 :(得分:1)
如果你可以发布一个数据的例子(例如:它来自哪里,一个格式正确的数组print_r()
输出的例子),这将有所帮助,但是从我可以收集到的,这将得到来自阵列的电子邮件:
/* Make $array hold the given array */
$emails = array();
foreach($array as $contact){
$emails[] = $contact['email'];
}
// All emails
print_r($emails);
答案 2 :(得分:1)
你可以在每个数组元素上运行一个正则表达式。像这样:/“email”:“(。+?)”/
$emails = array();
foreach ($array as $str)
{
if (preg_match('/"email":"(.+?)"/', $str, $matches))
{
$emails[] = $matches[1];
}
}