繁体   English   中英

在PHP中仅循环某些数组键

[英]Loop only certain array key in PHP

如何循环显示数组键type的值而不循环其他键,因为我有500多个数组行并减少了时间。

$details = array(
    array('year' => '1990'),
    array('year' => '1995'),
    array('condition' => 'working'),
    array('type' => 'bus'),
    array('type' => 'car'),
    array('type' => 'bike'),
);

您可能正在寻找PHP 5.5中引入的array_column (但是仍然会在内部遍历整个数组以收集具有此键的子数组):

<?php

$details = array_column($details, 'year');

print_r($details);

/*
    Array
    (
        [0] => 1990
        [1] => 1995
    )
*/

演示

对于旧版本的PHP,作者本人在github上有一个polyfill

PHP数组

$details = array(
    array('year' => '1990'),
    array('year' => '1995'),
    array('condition' => 'working'),
    array('type' => 'bus'),
    array('type' => 'car'),
    array('type' => 'bike'),
);

创建仅包含“类型”索引的数组

$names = array_map(function ($v)
        { 
            return $v['type']; 
        }, 
        $details);

$names = array_filter($names);      

print_r($names);

输出量

Array ( [3] => bus [4] => car [5] => bike ) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM