首页  >  问答  >  正文

求解数组的列数

<p>在这个数组输出中,我如何计算类型的数量?或者更好的是,如何在计算时排除additional_data?</p> <pre class="brush:php;toolbar:false;">Array ( [124] => Array ( [type] => 0 [value] => 4 Pack [label] => 4 Pack ) [125] => Array ( [type] => 0 [value] => 6 Pack [label] => 6 Pack ) [126] => Array ( [type] => 0 [value] => 12 Pack [label] => 12 Pack ) [additional_data] => {"swatch_input_type":"text","update_product_preview_image":"1","use_product_image_for_swatch":0} )</pre> <p>尝试过 <code>count(array_column($swatchLists, 'type'));</code></p> <p>但输出为0</p>
P粉818317410P粉818317410453 天前570

全部回复(1)我来回复

  • P粉060112396

    P粉0601123962023-08-15 09:36:30

    请尝试以下代码

    $countResult = array();
    
    foreach( $swatchLists as $item ){
        if( isset($item['type']) == false ){
            continue; // 排除不包含'type'的数组
        }
        $type = $item['type'];
        if( isset($countResult[$type]) ){
            $countResult[$type]++;
        }else{
            $countResult[$type] = 1;
        }
    }
    var_dump($countResult);

    每种类型的计数都将存储在$countResult中,数组键是类型值,数组值是计数。

    回复
    0
  • 取消回复