1. 程式人生 > >PHP 二維陣列 指定 value 作為 key || 二位陣列 取出指定 元素組成新陣列

PHP 二維陣列 指定 value 作為 key || 二位陣列 取出指定 元素組成新陣列

// 基礎陣列

$array = [
    array(5) {
  [0]=>
  array(2) {
    ["id"]=>
    string(1) "1"
    ["name"]=>
    string(21) "網站炒雞管理員"
  }
  [1]=>
  array(2) {
    ["id"]=>
    string(1) "2"
    ["name"]=>
    string(9) "技術部"
  }
  [2]=>
  array(2) {
    ["id"]=>
    string(1) "3"
    ["name"]=>
    string(9) "財務部"
  }
  [3]=>
  array(2) {
    ["id"]=>
    string(1) "4"
    ["name"]=>
    string(9) "編輯部"
  }
  [4]=>
  array(2) {
    ["id"]=>
    string(1) "0"
    ["name"]=>
    string(9) "人事部"
  }
}
]

1. 取出指定 value 作為key

array_column($roleList, NULL, 'id');

結果為:


array(5) {
  [1]=>
  array(2) {
    ["id"]=>
    string(1) "1"
    ["name"]=>
    string(21) "網站炒雞管理員"
  }
  [2]=>
  array(2) {
    ["id"]=>
    string(1) "2"
    ["name"]=>
    string(9) "技術部"
  }
  [3]=>
  array(2) {
    ["id"]=>
    string(1) "3"
    ["name"]=>
    string(9) "財務部"
  }
  [4]=>
  array(2) {
    ["id"]=>
    string(1) "4"
    ["name"]=>
    string(9) "編輯部"
  }
  [0]=>
  array(2) {
    ["id"]=>
    string(1) "0"
    ["name"]=>
    string(9) "人事部"
  }
}

2. 給陣列制定key | 指定一個元素為 key

$id = array_column($roleList, 'id');
$name = array_column($roleList, 'name');

$roleList = array_combine($id, $name);

結果為:


array(5) {
  [1]=>
  string(21) "網站炒雞管理員"
  [2]=>
  string(9) "技術部"
  [3]=>
  string(9) "財務部"
  [4]=>
  string(9) "編輯部"
  [0]=>
  string(9) "人事部"
}