将PHP二维数组提取出自己想要的信息
程序员文章站
2022-06-05 15:18:04
...
原二维数组,信息很多
array (size=16)
'id' => string '64' (length=2)
'user_id' => string '64' (length=2)
'doc_id' => string '121' (length=3)
'time' => string '2015-08-07 11:41:28' (length=19)
'email' => string 'yintx_123@163.com' (length=17)
'username' => string '孙策' (length=6)
'password' => string '18bc4215375cd9773a5f572934018bfa' (length=32)
'phone' => string '456181687' (length=9)
'category' => string '2' (length=1)
'company' => string '东吴集团' (length=12)
'name' => string '孙策' (length=6)
'position' => string '我被社长干死了' (length=21)
'address' => string '建康' (length=6)
'state' => string '3' (length=1)
'other_field' => null
'authentication' => string '1' (length=1)
array (size=16)
'id' => string '65' (length=2)
'user_id' => string '65' (length=2)
'doc_id' => string '121' (length=3)
'time' => string '2015-08-11 04:27:08' (length=19)
'email' => string 'yintx_121@163.com' (length=17)
'username' => string '刘封' (length=6)
'password' => string '18bc4215375cd9773a5f572934018bfa' (length=32)
'phone' => string '' (length=0)
'category' => string '0' (length=1)
'company' => string '蜀汉' (length=6)
'name' => string '刘封' (length=6)
'position' => string '备胎' (length=6)
'address' => string '荆州阿萨斯' (length=15)
'state' => string '2' (length=1)
'other_field' => null
'authentication' => string '1' (length=1)
现在只需要email,company,name,phone这四个值,怎么操作?
array (size=16)
'email' => string 'yintx_123@163.com' (length=17)
'phone' => string '456181687' (length=9)
'company' => string '东吴集团' (length=12)
'name' => string '孙策' (length=6)
array (size=16)
'email' => string 'yintx_121@163.com' (length=17)
'phone' => string '' (length=0)
'company' => string '蜀汉' (length=6)
'name' => string '刘封' (length=6)
回复内容:
原二维数组,信息很多
array (size=16)
'id' => string '64' (length=2)
'user_id' => string '64' (length=2)
'doc_id' => string '121' (length=3)
'time' => string '2015-08-07 11:41:28' (length=19)
'email' => string 'yintx_123@163.com' (length=17)
'username' => string '孙策' (length=6)
'password' => string '18bc4215375cd9773a5f572934018bfa' (length=32)
'phone' => string '456181687' (length=9)
'category' => string '2' (length=1)
'company' => string '东吴集团' (length=12)
'name' => string '孙策' (length=6)
'position' => string '我被社长干死了' (length=21)
'address' => string '建康' (length=6)
'state' => string '3' (length=1)
'other_field' => null
'authentication' => string '1' (length=1)
array (size=16)
'id' => string '65' (length=2)
'user_id' => string '65' (length=2)
'doc_id' => string '121' (length=3)
'time' => string '2015-08-11 04:27:08' (length=19)
'email' => string 'yintx_121@163.com' (length=17)
'username' => string '刘封' (length=6)
'password' => string '18bc4215375cd9773a5f572934018bfa' (length=32)
'phone' => string '' (length=0)
'category' => string '0' (length=1)
'company' => string '蜀汉' (length=6)
'name' => string '刘封' (length=6)
'position' => string '备胎' (length=6)
'address' => string '荆州阿萨斯' (length=15)
'state' => string '2' (length=1)
'other_field' => null
'authentication' => string '1' (length=1)
现在只需要email,company,name,phone这四个值,怎么操作?
array (size=16)
'email' => string 'yintx_123@163.com' (length=17)
'phone' => string '456181687' (length=9)
'company' => string '东吴集团' (length=12)
'name' => string '孙策' (length=6)
array (size=16)
'email' => string 'yintx_121@163.com' (length=17)
'phone' => string '' (length=0)
'company' => string '蜀汉' (length=6)
'name' => string '刘封' (length=6)
$keys = array(email,company,name,phone);
foreach 下原数组,if (!in_array($key, $keys )),unset掉
$result = array_map(function($value){
return ['email'=>$value['email'],'company'=>$value['company'],'name'=>$value['name'],'phone'=>$value['phone']];
}, $arr);
var_dump($result);
array(
'id' => 1,
'name' => 'Apache',
'version' => '2.4'
),
1 => array(
'id' => 2,
'name' => 'Nginx',
'version' => '1.8'
)
);
$new = array();
foreach($arr as $k => $v) {
$new[$k]['name'] = $v['name'];
$new[$k]['version'] = $v['version'];
}
print_r($new);
//输出:
Array
(
[0] => Array
(
[name] => Apache
[version] => 2.4
)
[1] => Array
(
[name] => Nginx
[version] => 1.8
)
)
来一个使用 array_walk()
的方法
$array = array(
array(
'id' => 1,
'name' => 'xiaoming',
'age' => 14,
'addr' => 'beijing',
),
array(
'id' => 2,
'name' => 'xiaohong',
'age' => 18,
'addr' => 'tianjin',
),
);
function unEvent(&$value) {
unset($value['age']);
unset($value['addr']);
}
array_walk($array, 'unEvent');
var_dump($array);
上一篇: 面对Siri窃听风波 苹果正式道歉
推荐阅读