SOFTELメモ Developer's blog

会社概要 ブログ 調査依頼 採用情報 ...
技術者募集中

【php】array_combine 使用例

問題

$str = '420,421,422';

のような区切り文字の入った文字列を

explode(',', $str);

すると

array(0 => '420', 1 => '421', 2 => '422');

になってしまうけど、

array(420 => '420', 421 => '421', 422 => '422');

にしたい。

答え

array_combine()関数を使うと、配列をがっちゃんこできる。

http://php.net/manual/ja/function.array-combine.php

$str = '420,421,422';
$a = explode(',', $str);
$a = array_combine($a, $a);

すると、

array(3) {
  [420]=>
  string(3) "420"
  [421]=>
  string(3) "421"
  [422]=>
  string(3) "422"
}

foreachでループなどしないでも作れる。

参考

phpさんは配列大好きみたいなので、どんな関数があるか一通り見ておくと役に立つかもしれません。

http://php.net/manual/ja/ref.array.php

関連するメモ

コメント