カテゴリ: PHP 更新日: 2025/06/26

PHP の文字列の基本操作(連結・切り出し・長さ)の使い方

PHP の文字列の基本操作(連結・切り出し・長さ)
PHP の文字列の基本操作(連結・切り出し・長さ)

新人と先輩の会話形式で理解しよう

新人

「PHPで文字列を扱う方法が知りたいです!どうやって文字列を作るんですか?」

先輩

「PHPでは、シングルクォート(')とダブルクォート(")の2種類を使って文字列を作ることができます。」

新人

「シングルクォートとダブルクォートは何が違うんですか?」

先輩

「それでは、それぞれの特徴を詳しく見ていきましょう!」

-

1. PHPの文字列とは?

1. PHPの文字列とは?
1. PHPの文字列とは?

PHPの文字列(String)は、テキスト情報を扱うためのデータ型です。例えば、ユーザー名やメッセージなどを管理するときに使われます。

PHPでは、文字列を扱うために主に2つの方法があります。

  • シングルクォート(')を使う方法
  • ダブルクォート(")を使う方法

この2つは見た目は似ていますが、動作に違いがあります。次のセクションで詳しく説明します。

2. 文字列を扱う基本的な方法(シングルクォート・ダブルクォート)

2. 文字列を扱う基本的な方法(シングルクォート・ダブルクォート)
2. 文字列を扱う基本的な方法(シングルクォート・ダブルクォート)

シングルクォート(')とダブルクォート(")の違いを見ていきましょう。

シングルクォート(')を使った文字列

シングルクォートは、変数を展開しない特徴があります。つまり、文字列の中に変数を書いても、そのままの文字列として扱われます。


<?php
$name = 'PHP';
echo 'こんにちは、$name!';
?>

この場合、出力結果は以下のようになります。


こんにちは、$name!

変数$nameがそのまま表示されてしまいました。シングルクォートでは変数の展開はされません。

ダブルクォート(")を使った文字列

ダブルクォートを使うと、文字列の中で変数を展開することができます。


<?php
$name = 'PHP';
echo "こんにちは、$name!";
?>

この場合の出力結果は以下のようになります。


こんにちは、PHP!

ダブルクォートを使うと、変数の値が正しく展開されて表示されることがわかります。

エスケープシーケンス

ダブルクォートを使う場合、特別な意味を持つエスケープシーケンスを使用できます。

  • \n:改行
  • \t:タブ
  • \":ダブルクォートを文字列内で使う
  • \\:バックスラッシュを文字列内で使う

例えば、改行を含む文字列を出力する場合は次のように書けます。


<?php
echo "こんにちは\nPHP!";
?>

出力結果は以下のようになります。


こんにちは
PHP!

ダブルクォートでは\nが適用されて、改行されることがわかります。

結論

シングルクォートとダブルクォートの使い分けのポイントは以下の通りです。

  • シングルクォート:そのままの文字列として扱いたい場合(変数を展開しない)
  • ダブルクォート:変数を展開したい場合やエスケープシーケンスを使いたい場合

次のセクションでは、PHPで文字列を連結する方法を学んでいきましょう!

3. 文字列の連結(ピリオド `.` を使った方法)

3. 文字列の連結(ピリオド `.` を使った方法)
3. 文字列の連結(ピリオド `.` を使った方法)

PHPでは、複数の文字列を連結するためにピリオド(`.`)を使います。これは、JavaScriptや他の言語の`+`演算子とは異なる点です。

新人

「PHPで2つの文字列をつなげるにはどうすればいいんですか?」

先輩

「PHPでは、ピリオド(`.`)を使って文字列を連結できます。実際の例を見てみましょう。」


<?php
$firstName = "太郎";
$lastName = "山田";
$fullName = $lastName . " " . $firstName;
echo $fullName;
?>

この場合の出力結果は以下のようになります。


山田 太郎

このように、ピリオドを使うことで簡単に文字列をつなげることができます。

4. 文字列の切り出し(`substr()` の使い方)

4. 文字列の切り出し(`substr()` の使い方)
4. 文字列の切り出し(`substr()` の使い方)

PHPで文字列の一部分を取得するには、`substr()` 関数を使います。例えば、ある文章の最初の5文字だけを取得したい場合などに便利です。

新人

「文章の一部だけを取り出すことはできますか?」

先輩

「PHPの`substr()`関数を使うと、指定した位置から特定の長さの文字列を切り出すことができます。」


<?php
$text = "こんにちは、PHP!";
$part = substr($text, 0, 5);
echo $part;
?>

この場合の出力結果は以下のようになります。


こんにちは

`substr($text, 0, 5)` の意味は以下の通りです。

  • 最初の引数:文字列 `$text`
  • 2番目の引数:開始位置(0からスタート)
  • 3番目の引数:取得する文字数(5文字)

また、負の数を使うと、後ろから数えて切り出すこともできます。


<?php
$text = "こんにちは、PHP!";
$part = substr($text, -4);
echo $part;
?>

この場合の出力結果は以下のようになります。


PHP!

このように、`substr()` を使うと文字列の一部を簡単に取り出すことができます。

-

5. 文字列の長さを調べる方法(`strlen()` の使い方)

5. 文字列の長さを調べる方法(`strlen()` の使い方)
5. 文字列の長さを調べる方法(`strlen()` の使い方)

文字列の長さ(文字数)を調べるには `strlen()` 関数を使います。

新人

「文字列の長さを調べるにはどうしたらいいですか?」

先輩

「PHPでは `strlen()` を使うことで簡単に文字数を取得できます。試しにコードを見てみましょう。」


<?php
$text = "PHPの学習";
$length = strlen($text);
echo $length;
?>

この場合の出力結果は以下のようになります。


12

しかし、注意点として `strlen()` はバイト数を返すため、日本語の文字(マルチバイト文字)が含まれる場合、想定と異なる値になることがあります。

例えば、`mb_strlen()` を使うと正しく文字数を取得できます。


<?php
$text = "PHPの学習";
$length = mb_strlen($text, "UTF-8");
echo $length;
?>

この場合の出力結果は以下のようになります。


6

このように、日本語を扱う場合は `mb_strlen()` を使うのがおすすめです。

6. 文字列を変換する(大文字・小文字変換)

6. 文字列を変換する(大文字・小文字変換)
6. 文字列を変換する(大文字・小文字変換)

PHPでは、文字列の大文字・小文字を変換するために、`strtoupper()` と `strtolower()` を使用します。

新人

「PHPで英文字をすべて大文字や小文字に変換する方法はありますか?」

先輩

「`strtoupper()` を使うと大文字に、`strtolower()` を使うと小文字に変換できます。実際にコードを見てみましょう。」

大文字に変換(`strtoupper()`)

英文字をすべて大文字に変換するには、`strtoupper()` を使います。


<?php
$text = "hello php!";
$upperText = strtoupper($text);
echo $upperText;
?>

この場合の出力結果は以下のようになります。


HELLO PHP!

小文字に変換(`strtolower()`)

英文字をすべて小文字に変換するには、`strtolower()` を使います。


<?php
$text = "HELLO PHP!";
$lowerText = strtolower($text);
echo $lowerText;
?>

この場合の出力結果は以下のようになります。


hello php!

このように、`strtoupper()` や `strtolower()` を使うと、文字列の大文字・小文字変換が簡単にできます。

7. 文字列の置換(`str_replace()` の使い方)

7. 文字列の置換(`str_replace()` の使い方)
7. 文字列の置換(`str_replace()` の使い方)

文字列の一部を別の文字列に置き換えたい場合は、`str_replace()` を使用します。

新人

「文章の中の特定の単語を別の単語に置き換えることはできますか?」

先輩

「`str_replace()` を使うと、指定した文字列を別の文字列に置き換えることができます。試しにコードを見てみましょう。」


<?php
$text = "今日は雨が降っています。";
$newText = str_replace("雨", "晴れ", $text);
echo $newText;
?>

この場合の出力結果は以下のようになります。


今日は晴れが降っています。

この例では、「雨」という文字を「晴れ」に置き換えました。

複数の単語を一度に置き換える

複数の単語を同時に置き換えることも可能です。


<?php
$text = "今日は雨で寒いです。";
$search = ["雨", "寒い"];
$replace = ["晴れ", "暖かい"];
$newText = str_replace($search, $replace, $text);
echo $newText;
?>

この場合の出力結果は以下のようになります。


今日は晴れで暖かいです。

このように、配列を使うことで複数の文字を一度に置き換えることができます。

8. PHPで文字列を扱う基本を振り返る

8. PHPで文字列を扱う基本を振り返る
8. PHPで文字列を扱う基本を振り返る

ここまでに学んだPHPの文字列操作について、振り返ってみましょう。

  • 文字列の作成:シングルクォート(`'`)とダブルクォート(`"`)の違い
  • 文字列の連結:ピリオド(`.`)を使って文字列をつなげる
  • 文字列の切り出し:`substr()` で一部の文字列を取得
  • 文字列の長さ:`strlen()` で長さを取得(マルチバイト文字は `mb_strlen()` を推奨)
  • 文字列の変換:`strtoupper()` で大文字に、`strtolower()` で小文字に変換
  • 文字列の置換:`str_replace()` で特定の文字を別の文字に置き換え

PHPでは、さまざまな方法で文字列を操作できます。基本的な関数を覚えておくと、データの加工や表示の際にとても役立ちます。

新人

「PHPの文字列操作について、基本的なことがよくわかりました!」

先輩

「そうだね! これらの関数を活用して、PHPでの文字列操作をどんどん試してみよう!」

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

カテゴリの一覧へ
新着記事
Pythonで複数の条件を組み合わせる方法!and・or・notの使い方
Pythonの例外処理(try-except)の基本と応用!エラーハンドリング完全ガイド
Pythonの三項演算子とは?一行で条件分岐を記述する方法
Pythonのmatch文(パターンマッチング)の使い方!switch文の代替
人気記事
No.1
Java&Spring記事人気No1
PHP のセッションの有効期限を設定する方法(session_set_cookie_params)
No.2
Java&Spring記事人気No2
PHP の関数のスコープを完全解説!ローカル変数とグローバル変数の違いとは?
No.3
Java&Spring記事人気No3
PHPの関数(function)の基本を完全ガイド!初心者でもわかる使い方
No.4
Java&Spring記事人気No4
PHP の XSS(クロスサイトスクリプティング)対策を完全解説!初心者向けガイド
-