Help us understand the problem. What is going on with this article?

テーブルに非スカラ(第1正規形未満、複数の値を文字列で格納)があったらexplode()を使う

More than 1 year has passed since last update.

いろいろな事情であるカラムがこういうときありますよね。

id person_ids
1 1,2,3
2 4,6
3 7,8,10

ひとつのフィールド(エクセルでいうとセル)に複数の値が入っていると、get()した値をその後加工するとき大変です。

そんなときは、こちらのメソッド。

$person_ids = '1, 2, 3';
$person_ids = explode(',', $person_ids);

// result
array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}

もし、フィールドに余計な文字列などがあったらpreg_replace()等でテキストを整えてからやるとよい。

php.net
explode
https://www.php.net/manual/ja/function.explode.php

yoshinyan
Webアプリケーションエンジニア。 PHP/Laravel/JavaScript/Vue.js/Ruby/Rails
https://yoshinyan99.hatenablog.com/
yyphp
PHPerが毎週集まり、ざっくばらんに情報交換する雑談コミュニティ
https://yyphp.connpass.com/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away