文字列

目次
  • 解説
  • 1. 文字とは
  • 2. 文字列
  • 5. このページで学習した型
問題に挑戦!
進捗を変更する




解説

1. 文字とは


普段、スマートフォンやパソコンなどで何気なく文字の種類を使い分けていると思いますが、下表のようにたくさんの種類があり、プログラムを書く上では正しく区別できる必要があります。

文字の種類文字の例
全角ひらがなあかさたなはまやらわ
全角カタカナアカサタナハマヤラワ
半角カタカナアカサタナハマヤラワ
全角漢字安加左太奈波末也良和
全角数字1234567890
半角数字1234567890
全角英字ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
半角英字ABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
全角記号!”#$%&’()ー^¥@「」;:,./¥=~|`{}+*<>?_
半角記号!"#$%&'()-^\@[];:,./\=~|`{}+*<>?_
全角スペース「 」
半角スペース「 」

2. 文字列


文字が複数連なった状態を文字列と呼びます。プログラム上で文字列のデータを扱う場合には、前後をシングルクォーテーション')で括ります。

文字列表し方
文字0個(長さ0)の文字列''
文字1個(長さ1)の文字列'あ'
文字10個(長さ10)の文字列'あれは100%猫だ!'

PHPプログラムとして使用できるのは、半角英数字と一部の記号のみであり、全角文字や半角カタカナなどは文字列の中以外では使用できません。特に全角半角の区別がつきにくい文字もありますので、十分注意しましょう。

Typesクラス内に新たにメソッドを作成し、ブラウザから「http://localhost/php_basic/Type.php」にアクセスして動きを確かめてみましょう。

    public static function practiceString() {
        $stringValue = 'あいうえお';
        Logger::echo($stringValue);
    }

特に断りが無い場合、学習用クラスの中にサンプルコードのメソッドを作成(もしくは変更)した際は、mainメソッドにその呼出部分を書いて実行してください。今回の場合は次のサンプルコードを「Types.php」ファイルの「Types」クラスに追記し、「self::practiceString();」をmainメソッド内に書き、ブラウザから「http://localhost/php_basic/Types.php」アクセスする、ということになります。わからない場合は「型と変数について学ぶ前に」をもう一度よく読んでみましょう!

「string」はそのまま英単語の「String(ストリング=文字列)」であるため、ストリング型文字列型と呼びます。

string型は「.」を使用することで、文字列やstring型の変数と結合することができます。また、ダブルクォーテーション(")で囲んだ文字列の中では、変数をそのまま展開することが可能です。変数の直後に文字列が続く場合、どこまでが変数か区別できなくなってしまうので、その際は変数名を「{}」で囲うことで正しく展開することができます。

    public static function practiceString() {
        $stringValue = 'あいうえお'; // 暗黙的にstring型の変数を定義
        Logger::echo($stringValue);
        Logger::echo('あいうえお' . ' かきくけこ');
        Logger::echo($stringValue . ' かきくけこ');
        Logger::echo("$stringValue かきくけこ");
        Logger::echo("${stringValue}かきくけこ");
    }
[2020/12/31 12:34:56] あいうえお
[2020/12/31 12:34:56] あいうえお かきくけこ
[2020/12/31 12:34:56] あいうえお かきくけこ
[2020/12/31 12:34:56] あいうえお かきくけこ
[2020/12/31 12:34:56] あいうえおかきくけこ

5. このページで学習した型


読み方
呼び方
データ
データ
範囲
Stringストリング型・
文字列型
'あいうえお'
'あ'
''
0 ~ 2,147,483,647 文字
※実際にはメモリーが
 先に限界を迎える

問題

確認問題


確認問題

この中で文字列の表記として正しくないものはどれか?