Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在php中访问数组的单值数组_Php_Arrays_Json_Imap - Fatal编程技术网

如何在php中访问数组的单值数组

如何在php中访问数组的单值数组,php,arrays,json,imap,Php,Arrays,Json,Imap,我想为下面的代码访问数组中数组的单个值 现在结果: {"result":[{"msgno":" 1","from":[{"personal":"Blind Mailer","mailbox":"mailerblind","host":"gmail.com"}],"subject":"Testing","date":"Mon, 2 Jan 2017 13:16:21 +0530"}]} {"result":[{"msgno":" 1","from":"Blind Mailer","subject

我想为下面的代码访问数组中数组的单个值

现在结果:

{"result":[{"msgno":" 1","from":[{"personal":"Blind Mailer","mailbox":"mailerblind","host":"gmail.com"}],"subject":"Testing","date":"Mon, 2 Jan 2017 13:16:21 +0530"}]}
{"result":[{"msgno":" 1","from":"Blind Mailer","subject":"Testing","date":"Mon, 2 Jan 2017 13:16:21 +0530"}]}
$emails = imap_search($inbox,'SEEN'); 
$output = '';
$result=array(); 
foreach($emails as $ove) {

$headerInfo = imap_headerinfo($inbox,$ove);

$emailStructure = imap_fetchstructure($inbox,$ove);

if(!isset($emailStructure->multipart)) {
    array_push($result,array("msgno"=>$headerInfo->Msgno ,"from"=>$headerInfo->from,"subject"=>$headerInfo->subject,"date"=>$headerInfo->date));
} else {   
     array_push($result,array("msgno"=>$ove->msgno,"from"=>$ove->from,"subject"=>$ove->subject,"date"=>$ove->date));
}   
}
 echo json_encode(array('result'=>$result));
所需结果:

{"result":[{"msgno":" 1","from":[{"personal":"Blind Mailer","mailbox":"mailerblind","host":"gmail.com"}],"subject":"Testing","date":"Mon, 2 Jan 2017 13:16:21 +0530"}]}
{"result":[{"msgno":" 1","from":"Blind Mailer","subject":"Testing","date":"Mon, 2 Jan 2017 13:16:21 +0530"}]}
$emails = imap_search($inbox,'SEEN'); 
$output = '';
$result=array(); 
foreach($emails as $ove) {

$headerInfo = imap_headerinfo($inbox,$ove);

$emailStructure = imap_fetchstructure($inbox,$ove);

if(!isset($emailStructure->multipart)) {
    array_push($result,array("msgno"=>$headerInfo->Msgno ,"from"=>$headerInfo->from,"subject"=>$headerInfo->subject,"date"=>$headerInfo->date));
} else {   
     array_push($result,array("msgno"=>$ove->msgno,"from"=>$ove->from,"subject"=>$ove->subject,"date"=>$ove->date));
}   
}
 echo json_encode(array('result'=>$result));
php代码:

{"result":[{"msgno":" 1","from":[{"personal":"Blind Mailer","mailbox":"mailerblind","host":"gmail.com"}],"subject":"Testing","date":"Mon, 2 Jan 2017 13:16:21 +0530"}]}
{"result":[{"msgno":" 1","from":"Blind Mailer","subject":"Testing","date":"Mon, 2 Jan 2017 13:16:21 +0530"}]}
$emails = imap_search($inbox,'SEEN'); 
$output = '';
$result=array(); 
foreach($emails as $ove) {

$headerInfo = imap_headerinfo($inbox,$ove);

$emailStructure = imap_fetchstructure($inbox,$ove);

if(!isset($emailStructure->multipart)) {
    array_push($result,array("msgno"=>$headerInfo->Msgno ,"from"=>$headerInfo->from,"subject"=>$headerInfo->subject,"date"=>$headerInfo->date));
} else {   
     array_push($result,array("msgno"=>$ove->msgno,"from"=>$ove->from,"subject"=>$ove->subject,"date"=>$ove->date));
}   
}
 echo json_encode(array('result'=>$result));

array\u push
会将项目附加到数组中。由于追加的本身是一个数组,因此在数组中有一个数组,而不是在单个数组中有所有值

相反,您希望使用
array\u merge
,它将获取两个数组并将它们连接在一起,以创建单个一维数组。请参见此处的PHP手册: