簡體   English   中英

如何從此數組中提取key => value對

[英]How to extract key=>value pairs from this array

我有這個數組

[InstrumentCategory] => Array
                (
                    [0] => Array
                        (
                            [id] => 4
                            [title] => Training
                            [InstrumentsCategory] => Array
                                (
                                    [id] => 56
                                    [instrument_id] => 28
                                    [category_id] => 4
                                )

                        )

                    [1] => Array
                        (
                            [id] => 8
                            [title] => Working time flexibility
                            [InstrumentsCategory] => Array
                                (
                                    [id] => 57
                                    [instrument_id] => 28
                                    [category_id] => 8
                                )

                        )

                    [2] => Array
                        (
                            [id] => 16
                            [title] => Income support for workers
                            [InstrumentsCategory] => Array
                                (
                                    [id] => 55
                                    [instrument_id] => 28
                                    [category_id] => 16
                                )

                        )

                )

有沒有其他方法來提取id =>值對(請注意,在這種情況下, id是子數組中的鍵)而不是for循環?

提前致謝

如果使用PHP 5.3,則可以使用以下代碼( array_reduce ):

$r = array_reduce($input_array,
                  function ($res, $cur) {
                      return $res + array($cur['id'] => $cur);
                  }, array());

之后, $r包含id =>值對。

編輯: PHP版本<5.3,您可以執行以下操作:

function array_reduce_cb_id ($res, $cur) {
    return $res + array($cur['id'] => $cur);
}

$r = array_reduce($input_array, 'array_reduce_cb_id', array());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM