我有一个PHP数组,如下所示:
Array
(
[2] => Array
(
[_diskquota] => 524288000
[_diskused] => 0
[diskquota] => 500
[diskused] => 0
[diskusedpercent] => 0
[diskusedpercent20] => 0
[domain] => domain1.com
[email] => aaa@domain1.com
[humandiskquota] => 500 MB
[humandiskused] => None
[login] => aaa@domain1.com
[mtime] => 1378636684
[txtdiskquota] => 500
[user] => aaa
)
[3] => Array
(
[_diskquota] => 0
[_diskused] => 0
[diskquota] => unlimited
[diskused] => 0
[diskusedpercent] => 0
[diskusedpercent20] => 0
[domain] => domain2.com
[email] => ddd@domain2.com
[humandiskquota] => None
[humandiskused] => None
[login] => ddd@domain2.com
[mtime] => 1378636684
[txtdiskquota] => unlimited
[user] => ddd
)
[4] => Array
(
[_diskquota] => 104857600
[_diskused] => 0
[diskquota] => 100
[diskused] => 0
[diskusedpercent] => 0
[diskusedpercent20] => 0
[domain] => domain3.com
[email] => sss@domain3.com
[humandiskquota] => 100 MB
[humandiskused] => None
[login] => sss@domain3.com
[mtime] => 1378636684
[txtdiskquota] => 100
[user] => sss
)
)
如何在 php foreach 中获得这样的结果?(我不想列出其他值)
电子邮件 | humandiskquota | humandiskuse
我的代码尝试。 foreach 正在哗众取宠,但我无法仅从数组中获取电子邮件值。
foreach ($d as $arr => $key)
{
foreach ($key as $k => $v)
{
//echo "$k: $v<br>";
echo $email=$k['email'].' | ';
echo $email=$v['email'].' | ';
echo $email=$v->email.' | ';
echo $email=$k->email.' | ';
}
echo "<br>";
}
这里不需要两个 foreach 循环。以下方法应该有效:
foreach ($d as $key => $data) {
$email[] = $data['email'];
echo $data['email']. ' | ' .
$data['humandiskquota'] . ' | ' .
$data['humandiskused'];
echo '<br/>';
}
//print_r($email);
输出:
aaa@domain1.com | 500 MB | None
ddd@domain2.com | None | None
sss@domain3.com | 100 MB | None
演示!
你可以
简单地用一个foreach
来做到这一点:
foreach ($d as $array){
echo "{$array['email']} | {$array['humandiskquota']} | {$array['humandiskused']} <br/>" ;
}