BETA

PHP,JavaScriptで文字列⇔配列の変換

投稿日:2018-12-24
最終更新:2019-03-22

自分用メモ。文字列⇔配列の変換。カンマ区切りをよく利用するため、利用する記号はカンマ,とする。pythonは最近習い立て。

PHP

文字列→配列の変換【explode】

$str = 'aaa,bbb,ccc';  
$arr = explode(',', $str);  

これにより下記のような配列に変換される。

$arr = [  
    0 => 'aaa',  
    1 => 'bbb',  
    2 => 'ccc',  
];  

配列→文字列の変換【implode】

$arr = ['aaa','bbb','ccc'];  
$str = implode(',', $arr);  

これにより下記のような文字列に変換される。

$str = 'aaa,bbb,ccc';  

区切り文字を消したい場合は','=>''(空白)にすればOK

メモ

  • ブログ機能を作る際、DBにタグ情報として保存するため「日常,ポエム」として保存し、Viewで表示する際配列の形に直してなどで使うことが多い(個人的に)
    • DB設計としてはあまりよくない(小声)
    • タグ検索機能を実装する場合は大人しく別テーブルに保存しhasManyなどで取得するのが吉
  • csvデータを書き出しforeachなどで呼び出しなどをする際は、一度改行\nで配列に変換した後、カンマ,で二次元配列に書き出すなどをする。
    • 途中で改行が入っている際は漏れなく死ぬので正規表現も組み合わせること(自戒)

JavaScript

文字列→配列の変換【.split()】

var str = 'aaa,bbb,ccc,ddd,eee';  
var arr = str.split(',');  

特定の個数だけ収める場合

var arr_max3 = str.split(',', 3);  

結果は以下の通り。

arr = ['aaa', 'bbb', 'ccc', 'ddd', 'eee'];  

arr_max3 = ['aaa', 'bbb', 'ccc'];  

文字列→配列の変換【.split()】

var arr = ['aaa','bbb','ccc'];  
var str = arr.join(',');  

これにより下記のような文字列に変換される。

str = 'aaa,bbb,ccc';  

メモ

  • 個人的にcsvデータから取得する場合などに利用することが多い。こちらの注意事項はPHPと同じ。

おまけ:Python

文字列→配列の変換【.split()】

str = 'aaa,bbb,ccc';  
arr = str.split(',');  

これにより下記のような文字列に変換される。

arr = ['aaa', 'bbb', 'ccc'];  

文字列→配列の変換【.join()】

arr = map(['aaa','bbb','ccc']);  
str = ','.join(arr);  

これにより下記のような文字列に変換される。

str = 'aaa,bbb,ccc';  
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
駆け出しエンジニアからエキスパートまで全ての方々のアウトプットを歓迎しております!
or 外部アカウントで 登録 / ログイン する
クランチについてもっと詳しく

この記事が掲載されているブログ

web中心のメモ置き場。プログラミングからデザインまで。

よく一緒に読まれる記事

0件のコメント

ブログ開設 or ログイン してコメントを送ってみよう
目次をみる
技術ブログをはじめよう Qrunch(クランチ)は、プログラマの技術アプトプットに特化したブログサービスです
or 外部アカウントではじめる
10秒で技術ブログが作れます!