PHPで配列値を1文字ずつダブルクオーテーションで囲んでカンマ区切りで書き出す方法

  • このエントリーをはてなブックマークに追加
  • Pocket
  • LINEで送る

PHPで処理を書いていると配列で値を扱う場面が増えてきます。配列は複数の値を格納できるからですね。

PHPで配列値を1文字ずつダブルクオーテーションで囲んでカンマ区切りで書き出す方法

では念のために配列について整理しておきましょう。変数(fruits)に配列型で文字を代入した例です。

変数に配列型で文字を代入する

$fruitsという名前の変数に「いちご」「マスカット」「ぶどう」という文字を代入しています。

<?php
$fruits = array("いちご","マスカット","ぶどう");
?>

配列型を文字型でechoした場合

ちなみに配列型をそのままechoするとエラーが出ます。

<?php
$fruits = array("いちご","マスカット","ぶどう");
echo $fruits;
?>

配列型の変数を「文字列型」で出力しようとするために表示されるエラーですね。

出力の型が違うというエラー

ちなみに「Notice: Array to string conversion」はエラーというより「出力の型が違います」というメッセージ。配列型で格納された変数なのでそれぞれを出力する場合は少し違った書き方をしなければなりません。

配列型を正しく出力する書き方

以下の通りにechoするとエラーは表示されません。

<?php
$fruits = array("いちご","マスカット","ぶどう");
echo $fruits[0];
echo $fruits[1];
echo $fruits[2];
?>

配列は「0」から順番に保存されるので「0」がいちご、「1」がマスカット、「2」がぶどうとなります。

ダブルクォーテーションとカンマで区切って出力する方法

そして最後に配列に格納された値をダブルクォーテーションとカンマで区切られた状態で出力する方法。

<?php
$fruits = array("いちご","マスカット","ぶどう");
$results  = implode ( ",", preg_replace ( '/^(.*?)$/', '"$1"', $fruits ) );
echo $results;
?>

出力した結果が以下です。

ちなみに変数はその都度代入されるので同じ名前を使っても構いません。

<?php
$fruits = array("いちご","マスカット","ぶどう");
$fruits  = implode ( ",", preg_replace ( '/^(.*?)$/', '"$1"', $fruits ) );
echo $fruits;
?>

さきほどの例では「$fruits」と「$results」であえてわかりやすくわけて書きましたがどちらでも結果は同じ。

変数名は分けておくと処理を追いかけやすいです。イコールは代入なので常に上書きされていきます。

まとめ

本日は「PHPの配列値をダブルクォーテーションで括ってカンマ区切りで出力する方法」を解説いたしました。

実際のシステム開発では「配列型で格納されたデータ」から「必要な形に整えて出力する」ことが多いです。当然ですが、状況によっては必要な型のデータも違うので取り出した後に最適化して使っていきます。

データの扱い方を覚えるとさまざまな形に流用できるのでぜひ覚えてくださいませ。

補足

PHPの配列データを「単純なカンマ区切り」に変換する方法は以下です。

<?php
$fruits = array("いちご","マスカット","ぶどう");
$results = implode(',', $fruits);
echo $results;
?>

状況に応じてさまざまな出力状態へ変換して使いまわしていきましょう。

【今すぐ無料プラグインを手に入れる】
無料ダウンロードはこちら

ワードプレス専門家に丸投げする

WPホームページ研究所はワードプレスを中心としたブログ作成・ホームページ制作・オウンドメディア構築・プラグイン設定・調整など幅広いカスタマイズに対応しております。 記事の掲載情報はもちろんお好みの機能をいただければ専属スタッフが心を込めて対応させていただきます。まずはお気軽にお問い合わせくださいませ。

💻受講料無料でプログラミング習得

⇒ 完全無料のプログラミングスクール - 手に職をつけて安定的に働きたい人へ -

お問い合わせの種類をお選びください(もっとも近い項目)

法人の場合は法人名とご担当者のお名前をご入力ください

返信時のご連絡に利用するメールアドレスをご入力ください

運営中のウェブサイトURLがあればご入力ください

お困りの内容があれば詳しい内容をお聞かせください

クレジットカード決済手数料の話

WordPressに活用できる技術