広告スペース(バナー)
🐘PHP レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 43 / 68
文字列の反転と回文判定
このレッスンでは、mb_str_split関数を使った文字列の反転と回文判定を学び、日本語のような多バイト文字を正しく扱う方法を理解することを目標にします。「PHP 多バイト文字 反転」で調べている方向けです。
日本語のような文字を正しく扱うには、mb_str_split()で1文字ずつの配列に分けてからarray_reverse()で逆順にします。前から読んでも後ろから読んでも同じ文字列を回文と呼びます。
サンプルコードでは、mb_str_split($str)で文字列を1文字ずつの配列に分割し、array_reverse()で並びを逆にしてからimplode('', ...)でまた1つの文字列に戻しています。「しんぶんし」のような日本語の回文も正しく判定できる点を確認してみましょう。
初心者がよくつまずくのが、通常のstr_split()を使うと日本語のようなマルチバイト文字が正しく1文字ずつに分割されない点です。多バイト文字を正しく扱うmb_関数群を知っておくことは、日本語を扱うPHPアプリで欠かせない基礎です。
文字列を配列として扱う方法とは異なり、PHPでは多バイト文字対応の専用関数を使うのが基本です。日本語のWebサービスを開発するうえで、この違いを理解しておくことは非常に重要です。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではPHPを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
🎯
ここまでできればゴール達成!
文字列が回文になっているかを判定する、簡単な言葉遊びゲームが作れるようになります。
文字列が回文になっているかを判定する、簡単な言葉遊びゲームが作れるようになります。
広告スペース(バナー)
広告スペース(記事内)