如何从PHP中的关联数组中删除二级索引
问题描述:
print_r($unique_id);
Array
(
[0] => Array
(
[LeadEmailDetail] => Array
(
[id] => 97
[email] => vikastyagismartbuzz8@gmail.com
)
)
[1] => Array
(
[LeadEmailDetail] => Array
(
[id] => 93
[email] => vikastyagi87@gmail.com
)
)
[2] => Array
(
[LeadEmailDetail] => Array
(
[id] => 94
[email] => vikastyagismartbuzz9@gmail.com
)
)
)
But i want like that
Array
(
[0] => Array
(
[id] => 97
[email] => vikastyagismartbuzz8@gmail.com
)
[1] => Array
(
[id] => 93
[email] => vikastyagi87@gmail.com
)
[2] => Array
(
[id] => 94
[email] => vikastyagismartbuzz9@gmail.com
)
)
print_r($ unique_id); p>
Array
(
[0] =>数组
(
[LeadEmailDetail] =>数组
(
[id] => 97
[email] => vikastyagismartbuzz8@gmail.com
)\ n)
[1] =>数组
(
[LeadEmailDetail] =>数组
(
[id] => 93
[email] => vikastyagi87@gmail.com
)
)
[2] =>数组
(
[LeadEmailDetail] =>数组
(
[id] => 94
[email] => vikastyagismartbuzz9 @ gmail.com
)
)
)
code> pre>
但我想要那样 p>
数组
(
[0] =>数组
(
[id] => 97
[email] => vikastyagismartbuzz8@gmail.com
)
[1] = >数组
(
[id] => 93
[email] => vikastyagi87@gmail.com
)
[2] => 数组
(
[id] => 94
[email] => vikastyagismartbuzz9@gmail.com
)
)
code> pre>
div>
答
Try this:
array_map('array_shift', $unique_id);
答
Who build the $unique_id array? I would recommend to build it in the form you like
To solve your question ... out of the box quick and dirty
<?php
$new = array();
foreach($unique_id as $arr) {
foreach ($arr['LeadEmailDetail'] as $a) {
$new[] = $a;
}
}
print_r($new);
答
try this
foreach($unique_id as $k => $v)
{
$array[] = array_shift($v);
}
答
Simple loop does a job for you:
foreach ($array as &$v) {
$v = current($v);
}
unset($v);
p.s. doesn't create another array (memory leak) like other examples.
答
print_r( array_column( $unique_id, 'LeadEmailDetail' ) );
Requires PHP >= 5.5.0