猿问

如何计算array_column中的多个项目?

我问了一个名为“如何计算数组中的项目数?' 现在我需要帮助来扩展这个问题。


你如何计算两个数组中的项目?


我的数组如下所示:


Array

(

[0] => Array

(

    [acf_fc_layout] => irl_today_website_entry

    [irl_today_website] => Array

        (

            [0] => Array

                ( data removed)


            [1] => Array

                ( data removed )

        )

)

[1] => Array

(

    [acf_fc_layout] => irl_today_social_entry

    [irl_today_social] => Array

        (

            [0] => Array

                ( data remove )

            [1] => Array

                ( data remove)

        )

)

)

我使用:


<?php $arrays = get_field('irl_today_entry');

$res = array_map(function($x) {

return count($x);

}, array_column($arrays, 'irl_today_website'));?>

计算中的项目[irl_today_social]。如何计算[irl_today_social]和中的项目[irl_today_website]?


我试过array_column($arrays, "irl_today_social", "irl_today_website")了,它只计算了项目[irl_today_social]


慕神8447489
浏览 126回答 1
1回答

慕勒3428872

array_map()可以喂多个阵列来处理。在这种情况下,第一个数组"irl_today_social"元素由 引用$x,第二个"irl_today_website"由引用。$y使用以下:$res = array_map(function($x, $y) {&nbsp; &nbsp; $soc = count($x);&nbsp; &nbsp; $web = count($y);&nbsp; &nbsp; return ['soc' => $soc, 'web' => $web];}, array_column($arrays, "irl_today_social"), array_column($arrays, "irl_today_website"));array_map()将返回一个包含每个计数的数组 - 结果示例输出:Array(&nbsp; &nbsp; [0] => Array&nbsp; &nbsp; &nbsp; &nbsp; (&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [soc] => 2&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; [web] => 3&nbsp; &nbsp; &nbsp; &nbsp; ))
随时随地看视频慕课网APP
我要回答