[解決済み] 配列を", "でインプロードし、最後の項目の前に "and "を追加する。
2023-06-02 04:10:56
質問
この配列は項目のリストを保持しており、それを文字列にしたいのですが、最後の項目の前にカンマではなく &/and を付ける方法が分かりません。
1 => coke 2=> sprite 3=> fanta
は、次のようになります。
coke, sprite and fanta
これは通常のimplode関数です。
$listString = implode(', ', $listArrau);
簡単な方法は?
どのように解決するのですか?
任意の個数で動作するロングライナーです。
echo join(' and ', array_filter(array_merge(array(join(', ', array_slice($array, 0, -1))), array_slice($array, -1)), 'strlen'));
あるいは、もし 本当に を好むなら、その冗長性を利用することもできます。
$last = array_slice($array, -1);
$first = join(', ', array_slice($array, 0, -1));
$both = array_filter(array_merge(array($first), $last), 'strlen');
echo join(' and ', $both);
ポイントは、このスライス、マージ、フィルタリング、結合の処理で
すべて
のケースを、0、1、2 のアイテムを含めて、余分な
if..else
ステートメントなしで、0と2の項目を含むすべてのケースを正しく表示します。そして、それはたまたまワンライナーに折り畳むことができます。
関連
-
[解決済み】php, mysql - データベースへの接続数が多すぎるエラー
-
[解決済み] 致命的なエラーです。mysqli_result 型のオブジェクトを使用できません [終了] 。
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] 配列に特定のインデックスで項目を挿入する方法 (JavaScript)
-
[解決済み] Javaで配列を宣言し、初期化する方法は?
-
[解決済み] Java の配列を表示する最も簡単な方法は何ですか?
-
[解決済み] JavaScriptで配列の先頭に新しい配列要素を追加するにはどうすればよいですか?
-
[解決済み] 配列の最後の項目を取得する
-
[解決済み] 配列の最初の要素を取得する
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「初期通信パケットの読み込み」でMySQLサーバーに接続できなくなり、システムエラーになる。0
-
[解決済み】メンバ関数をnullで呼び出す?
-
[解決済み】stdClassクラスのオブジェクトが文字列に変換されない。
-
[解決済み】PHP フェイタルエラー。未定義の関数mssql_connect()をコールしています。
-
[解決済み] 警告:mysqli_fetch_array()は、パラメータ1がmysqli_resultであることを期待する、オブジェクトはで指定された。
-
[解決済み】PHPのクラスが見つからないが、インクルードされている
-
[解決済み】/var/www/htmlとは何ですか?[クローズド]
-
[解決済み] Uncaught Error: 未定義の関数 mysql_escape_string() の呼び出し。
-
[解決済み】mysqli::query(): mysqli をフェッチできない
-
[解決済み】警告: file_get_contents(): https:// ラッパーがサーバー構成ですべて無効になっています。