【PHP】implodeで文字列をダブルクォーテーションで囲んで出力する
※本ページのリンクにはプロモーションが含まれています。
こんにちは、Ryohei(@ityryohei)です!
本記事では、PHPのimplodeで文字列をダブルクォーテーションで囲んで出力する方法をご紹介しています。
PHPのimplodeで配列を文字列にするときに配列要素の値をダブルクォーテーションで囲んで出力するにはどうすればいいんだろう?
上記の疑問にお答えします。
では、解説していきます。implodeで文字列をダブルクォーテーションで囲んで出力する
implode
で文字列をダブルクォーテーションで囲んで出力するには、下記のPHPを実行します。
PHP
<?php $array = ['a', 'b', 'c', 'd', 'e', 'f', 'g']; $result = implode('", "', $array); echo '"'.$result.'"';
上記の実行結果は下記の通りです。
実行結果
"a", "b", "c", "d", "e", "f", "g"
implode
の第1引数に", "
を指定することで、配列から文字列に変換する際に区切り文字を下記のように出力することができます。
a", "b", "c", "d", "e", "f", "g
後は先頭と末尾にダブルクォーテーションを追加することで、implode
で文字列をダブルクォーテーションで囲んで出力することが可能となります。
本記事の内容が必要になるケースは少ないですが、例えばPHPの配列の値を文字列に変換し、JavaScript等に渡す際に便利です。
下記例では、data属性の値にimplode
の出力結果を使用するため、配列の区切り文字にシングルクォーテーションを指定しています。
<?php $array = ['a', 'b', 'c', 'd', 'e', 'f', 'g']; $result = implode("', '", $array); ?> <ul class="block" data-list="['<?= $result; ?>']"></ul> <script> const block = document.querySelector('.block'); console.log(block.dataset.list); </script>
実行結果は下記の通りです。
['a', 'b', 'c', 'd', 'e', 'f', 'g']
良い感じに出力されていますね。
最後に
本記事の内容が必要になるケースは稀ですが、出力結果をダブルクォーテーション以外のもので囲むことができるため、implode
の用途の幅が広がります。一つの知識として覚えておくと、いつか役に立つかもしれませんね。
以上、PHPのimplodeで文字列をダブルクォーテーションで囲んで出力する方法のご紹介でした!