Cách rút gọn mảng trong PHP bằng các ví dụ

Chúng tôi cung cấp cho bạn một số câu trả lời cho truy vấn Cách rút gọn mảng PHP bằng các ví dụ trong bài viết tiếp theo. Tôi hy vọng đây sẽ là câu trả lời bạn cần, giúp bạn tiết kiệm thời gian. thực thi

Cách rút gọn mảng trong PHP bằng các ví dụ
<?php

$array = [
    [
        'tag_id' => "6291",
        'az' => 5,
    ],
    [
        'tag_id' => "6291",
        'az' => 4,
    ],
    [
        'tag_id' => "6311",
        'az' => 4,
    ],
    [
        'tag_id' => "6427",
        'az' => 4,
    ]
];

$tag_id_indexes = []; // To store the index of the first tag_id found.

array_walk(
    $array,
    function ($sub_array, $index) use (&$array, &$tag_id_indexes) {
        // Store the index of the first tag_id found.
        if (!isset($tag_id_indexes[$sub_array['tag_id']])) {
            $tag_id_indexes[$sub_array['tag_id']] = $index;
        }
        else { // This tag_id already exists so we'll combine it.
            // Get the index of the previous tag_id.
            $first_tag_id_index = $tag_id_indexes[$sub_array['tag_id']];
            // Sum the az value.
            $array[$first_tag_id_index]['az'] += $sub_array['az'];
            // Remove this entry.
            unset($array[$index]);
        }
    }
);

print "The reduced array but with the original indexes:\n" . var_export($array, true) . "\n";

// If you want new indexes.
$array = array_values($array);

print "The reduced array with new indexes:\n" . var_export($array, true) . "\n";

Nếu bạn chưa tìm thấy câu trả lời cho câu hỏi của mình. Vui lòng xem thêm các mục bên dưới về Cách rút gọn mảng trong PHP bằng các ví dụ. Hoặc để lại câu hỏi cho chúng tôi

chưa xác định