PHP初心者が学ぶ!文字列の切り出し方法を完全解説!10の具体例付き

PHPで文字列を切り出す方法を学ぶ初心者のためのイラスト PHP

 

【サイト内のコードはご自由に個人利用・商用利用いただけます】

このサービスはSSPによる協力の下、運営されています。

この記事では、プログラムの基礎知識を前提に話を進めています。

説明のためのコードや、サンプルコードもありますので、もちろん初心者でも理解できるように表現してあります。

基本的な知識があればカスタムコードを使って機能追加、目的を達成できるように作ってあります。

※この記事は、一般的にプロフェッショナルの指標とされる『実務経験10,000時間以上』を凌駕する現役のプログラマチームによって監修されています。

サイト内のコードを共有する場合は、参照元として引用して下さいますと幸いです

※Japanシーモアは、常に解説内容のわかりやすさや記事の品質に注力しております。不具合、分かりにくい説明や不適切な表現、動かないコードなど気になることがございましたら、記事の品質向上の為にお問い合わせフォームにてご共有いただけますと幸いです。
(送信された情報は、プライバシーポリシーのもと、厳正に取扱い、処分させていただきます。)

はじめに

こんにちは、PHPを学び始めた方々へ向けて、文字列を切り出すための具体的な方法を解説します。

今回紹介する10の方法を身につければ、あなたのPHPスキルは確実に上がりますよ。

●PHPで文字列を切り出す基本

まずは基本からご紹介します。

PHPでは文字列を扱うための様々な関数が用意されています。

その中でも、特定の部分の文字列を取得したり、文字列を分割したりするための関数が多数存在します。

○文字列の切り出し方

基本的に、PHPで文字列を切り出す方法は、指定した位置から指定した長さの文字列を取得する方法と、特定の文字で文字列を分割する方法の2種類に大別されます。

それぞれに適した関数が用意されています。

●PHPで文字列を切り出す10の方法 それでは具体的な10の方法を見ていきましょう。それぞれの方法について、サンプルコードと共に解説します。

○サンプルコード1:substr関数

このコードではsubstr関数を使って文字列を切り出す方法を紹介します。

substr関数は、指定した位置から指定した長さの文字列を取得します。

この例では、文字列”Hello, World!”から位置6から5文字分の文字列を取得します。

$str = "Hello, World!";
echo substr($str, 6, 5); // 出力:World

○サンプルコード2:mb_substr関数

mb_substr関数は、マルチバイト文字列(日本語など)を正しく切り出すための関数です。

この例では、”こんにちは、世界!”から位置0から5文字分の文字列を取得します。

$str = "こんにちは、世界!";
echo mb_substr($str, 0, 5); // 出力:こんにちは

○サンプルコード3:explode関数

explode関数を使うと、指定した文字で文字列を分割できます。

この例では、カンマで文字列”apple,banana,grape”を分割します。

$str = "apple,banana,grape";
print_r(explode(",", $str)); // 出力:Array ( [0] => apple [1] => banana [2] => grape )

○サンプルコード4:str_split関数

str_split関数は、指定した長さで文字列を切り出し、配列として返す関数です。

このコードでは、str_split関数を使って”Hello, World!”を1文字ごとに分割します。

$str = "Hello, World!";
print_r(str_split($str)); // 出力:Array ( [0] => H [1] => e [2] => l [3] => l [4] => o [5] => , [6] =>  [7] => W [8] => o [9] => r [10] => l [11] => d [12] => ! )

○サンプルコード5:strstr関数

strstr関数は、指定した文字から始まる部分文字列を取得する関数です。

この例では、”Hello, World!”から”World”以降の文字列を取得します。

$str = "Hello, World!";
echo strstr($str, "World"); // 出力:World!

○サンプルコード6:stristr関数

stristr関数は、strstr関数と同様に指定した文字から始まる部分文字列を取得しますが、大文字と小文字を区別しません。

この例では、”Hello, World!”から”world”以降の文字列を取得します。

$str = "Hello, World!";
echo stristr($str, "world"); // 出力:World!

○サンプルコード7:strrchr関数

strrchr関数は、指定した文字が最後に現れる位置からその後の文字列を取得します。

この例では、”Hello, World! World!”から最後の”World”以降の文字列を取得します。

$str = "Hello, World! World!";
echo strrchr($str, "World"); // 出力:World! World!

○サンプルコード8:str_replace関数

str_replace関数を使用すると、文字列内の特定の部分を他の文字列に置換することができます。

この例では、”Hello, World!”内の”World”を”PHP”に置換します。

$str = "Hello, World!";
echo str_replace("World", "PHP", $str); // 出力:Hello, PHP!

○サンプルコード9:preg_match関数

preg_match関数は、指定したパターンが文字列に含まれるかどうかをチェックします。

この例では、”Hello, World!”に”World”が含まれるかどうかをチェックします。

$str = "Hello, World!";
if(preg_match("/World/", $str)) {
    echo "マッチしました!";
} else {
    echo "マッチしませんでした。";
} // 出力:マッチしました!

○サンプルコード10:preg_replace関数

preg_replace関数は、正規表現を用いて文字列を置換します。

この例では、”Hello, World!”内の”World”を”PHP”に置換します。

$str = "Hello, World!";
echo preg_replace("/World/", "PHP", $str); // 出力:Hello, PHP!

●注意点と対処法

さて、これらの関数を使う上で注意すべき点として、各関数は異なるパラメータを要求することがあります。

パラメータの数や型が間違っていると、予期せぬエラーや結果が得られる可能性があるので注意が必要です。

また、マルチバイト文字列を扱う場合は、mb系の関数を使うことをお勧めします。

まとめ

以上が、PHPで文字列を切り出す10の方法です。

これらの方法を身につけることで、PHPでの文字列操作が一段と容易になります。

今後も引き続きPHP学習に励んでください。