【 PHP 】PHP8に入門してみた 47日目 PHPの基本 ( 続続・奥が深い文字列リテラル )

PHP8技術者認定初級試験 が始まるようなので 試験に向けて (できるだけ)勉強しようと思います! 使用する書籍は独習PHP 第4版(山田 祥寛)|翔泳社の本 (shoeisha.co.jp) となります。

データ型

まだまだ深いぞ!文字列の世界(特殊文字)

PHPでは「タブ」や「改行」についても\ + 文字 で表現できます。

 

<!DOCTYPE html>
<html lang="ja">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>PHPの基本</title>
</head>

<body>
    <?php
    // print命令は指定された文字列を表示するための命令です。
    $msg = 'こんにちは、変数の世界! <br />';

    print $msg;
    print 'こんにちは、皆さん! ';

    print '<br />';

    // 復帰(キャリッジリターン) 旧macosが使用していた改行コード
    print "復帰(キャリッジリターン)→" . "\r" . "←<br />";

    // 改行(ラインフィード) Linuxや最近のmacosが使用している改行コードです。
    print "改行(ラインフィード) →" . "\n" . "←<br />";

    // 水平タブ
    print "水平タブ→" . "\t" . "←<br />";

    // 垂直タブ!?
    print "垂直タブ→" . "\v" . "←<br />";

    // フォームフィード
    print "フォームフィード→" . "\f" . "←<br />";

    // ドル記号
    print "ドル記号→" . "\$" . "←<br />";

    // バックスラッシュ
    print "バックスラッシュ→" . "\\" . "←<br />";

    // 8進数で表現された文字
    print "8進数文字→" . "\111" . "←<br />";

    // 16進数で表現された文字
    print "16進数文字→" . "\xAB" . "←<br />";

    // 16進数で表現された文字(Unicode文字)
    print "16進数Uni文字→" . "\u{123F}" . "←<br />";

    // 「/'」と表示されます。
    print "\\'と表示されます。→" . "\'" . "←<br />";

    // シングルクォートは「\'」と「\\」だけが有効です。
    print "シングルクォート 1→" . '\'' . "←<br />";
    print "シングルクォート 2→" . '\\' . "←<br />";

    print "\\\"と表示されます。→" . '\"' . "←<br />";
    ?>
</body>

</html>

よくわからない文字が出てきましたね。

細かなルール

  • シングルクォート文字列は\'\\およびのみエスケープされていると認識されます。
  • ダブルクォート文字列はたくさんのエスケープシーケンスを扱えますが\'はエスケープされないまま\'と表示します。

メモ

深い!

PHPPHP

Posted by raika@blog