PHPデータ型文字列
文字列は私たちの目に見える文字と目に見えない文字のすべてであり、日常生活で私たちが言いたいことです:「シャオミンはとてもハンサムです」または「フェン姉さん、愛しています!」。文字列は私が表現したい、人々の目に見えるすべての文字です。
たとえば、次の文字が表示されます:
私は、おとぎ話の中のあなた、家、車、お金を持ったあなたの愛する王子になりたいです。 <html><title></title></html> ^@@@#@ 私の名前はシャオシェンヤンです
上に表示されているテキスト、HTML タグ、特殊文字、英語などは、すべて文字列として考えてください。
注: 目に見えない文字は本文では表現できないため、当面は説明しません。次の実験で徐々に注目してください。より明確に表現するには、本書に付属する PHP アカデミーによって作成された文字列に関するビデオもご覧ください。
PHP 言語で文字列を宣言するには 3 つの方法があります:
1. 一重引用符を使用して宣言します
2. 二重引用符を使用して宣言します
3. 文字区切り文字を使用して宣言します (非常に大きな文字列が必要な場合に使用されます)
1. 一重引用符宣言
英語のハーフフィート一重引用符を使用して文字列を囲みます
<?php //声明字符串变量$zhifu $zhifu = '曾经有操蛋的爱情摆在我面前,我珍惜了。当我得到的时候才感到后悔莫及。如果非要在这段爱情前面加上一段三个字,我愿意说三个字:滚犊子'; //你可以放XAMPP指定的目录下,新建一个文件叫str.php。然后访问一下http://127.0.0.1/str.php试试。会不会显示这句话。 echo $zhifu; ?>
2. 二重引用符宣言文字列
の両側に二重引用符を追加します弦。
<?php //声明字符串变量$str $str = "如果非要在滚犊子前面加上一个时间的话我愿意是马上。"; echo $str; ?>
3. 文字境界宣言
1) 変数の後の等号の後に不等号 (<<<) を 3 つ書きます。
2) 次に、<<< の後に文字を入力します (英語の大文字を推奨)。次の例のように: ABC
3) 次に行を変更し、書きたい文字を書きます
4)。行の先頭に、<<< とセミコロンに続く文字を記述します。次の例のように: ABC;
<?php $dingjie = <<<ABC 如果 非要在这个滚犊子 前 面<br /> 加上一段 <i>距离的话</i> 我想说:<h1>思想有多远,你就跟我滚多远</h1> ABC; ?>
二重引用符と一重引用符の違いは何ですか?
【重要な知識ポイント】 PHPの面接質問の中でも確率の高い面接質問(3回以上暗記して実験することをお勧めします)
1. 二重引用符は変数を解析しますが、一重引用符は変数を解析します変数を解析しません。
2. 変数を二重引用符の中に挿入します。変数の後ろに英語または中国語の文字がある場合、文字と変数が連結され、全体の変数として扱われます。変数の後にはスペースなどの特殊文字を必ず区切ってください。
3. 変数を二重引用符内に挿入し、その後ろにスペースを入れたくない場合は、変数を中かっこで囲むことができます。
4. 二重引用符はエスケープ文字を解析し、一重引用符はエスケープ文字を解析しません。ただし、一重引用符は ' と
を解析できます。 5. 一重引用符は二重引用符より効率的です。できるだけ一重引用符を使用してください
6. 二重の数字と一重引用符は相互に挿入できます! ! !二重引用符の間に一重引用符を挿入し、一重引用符の間に変数を挿入すると、変数が解析されます。
7. 魔法の文字列接続接着剤 - (.) ドット、文字列を接続するために使用されます。
8. 区切り文字宣言文字列を二重引用符と同じ関数として扱います。
実験例
1. 二重引用符は変数を解析しますが、一重引用符は変数を解析しません
<?php //声明变量$shouji $shouji = '为了苹果手机去卖肾'; //在双引号中放$shouji 然后echo 一下是什么效果呢? $str = "$shouji 会不会显示呢?"; //输入$str试试 echo $str; ?>
ブラウザで開くと、実行結果は次のようになります:
二重引用符は変数を解析する必要があるため、二重引用符は一重引用符ほど効率的ではありません。効率を高めるために、通常は一重引用符を使用します。
2. 変数を二重引用符の中に挿入します。変数の後ろに英語または中国語の文字がある場合、文字と変数が連結され、全体の変数として扱われます。スペースなどの特殊文字で区切ることができます。
<?php $php = 'php中文网'; $str = "$phpaaaa"; //你会发现输出$str,什么都没有在页面中显示 echo $str; ?>ただし、$str で宣言された文字列に $huaqiangu の後にスペースを入れ、次に aaaa を入れます。コードは次のとおりです。
<?php $php = 'php中文网'; //中间加了空格哟 $str = "$php aaaa"; echo $str; ?>実行によって表示される結果が空白のページではなくなっていることがわかりました。しかし、このページにはコンテンツがあります。次のようにします:
<?php $php = 'php中文网'; //中间加了空格哟 $str = "$php!aaaa"; echo $str; ?>皆さん一度ページを開いてコードを一度実行して、結果が次のようになるかどうかを確認してください: php aaaa したがって、これは私たちの 2 番目の Web サイトであることがわかります。視点。 3. 変数を二重引用符で囲み、その後ろにスペースを入れたくない場合は、変数を中括弧で囲むことができます。 それでは、末尾にスペースや特殊記号を入れたくない、変数 $huaqiangu を直接表示したい場合はどうすればよいでしょうか? - 私たちの解決策は、変数を中括弧で囲むことです。コードは次のとおりです。
<?php $php = 'php中文网'; //中间加了空格哟 $str = "{$php}aaaa"; echo $str; ?>したがって、Hua Qiangu の後ろに特別な記号やスペースがないことがわかります。これにより、目的の表示結果が得られます。
4. 二重引用符はエスケープ文字を解析し、一重引用符はエスケープ文字を解析しません。ただし、一重引用符は ' と
を解析できます。 4 番目の文字列に関する注意は、観察するのがより困難です。 いくつかのエスケープ文字がありますが、最も一般的に使用されるものは次のとおりです:
キャリッジ リターン
インデント
まず実験してみましょう。 n と t が何であるかを理解する。
<?php //声明一个字符串,记住是双引号 $string = "每天来PHP中文网\n给梦想\t一个机会"; echo $string; ?>
この実験を行う際に注意すべき点が 1 つあります。次のように、Web ページを表示するときに効果を確認できません。なぜ n と t が何を意味するのか、また私も理解できないのですか。二重引用符の解析では、n と t はどうなるでしょうか? ——右クリックしてソースコードを表示していないからです。クリックして効果を見てみましょう。
文字列変数を比較してみましょう:
$string = "毎日 PHP 中国語 Web サイトにアクセスしてくださいあなたの夢に機会を与えるために」;
n PHP Academy の背後では、ソース コードに表示される結果は Enter キーを押した場合と同じです。
夢を与えることとチャンスを与えることの間。表示される結果は、いくつかのスペースの効果です。これは、コンピュータでタブ キーを押した場合の効果と同等です。ただし、上記のコードも実行しますが、$string の二重引用符を一重引用符に変更します:
<?php //声明一个字符串,记住是双引号 $string = '每天来PHP中文网\n给梦想\t一个机会'; echo $string; ?>
実行して、その効果を確認してください:
一重引用符 t と n は、Enter キーと Tab キーを 1 回押すことによって変更されるのではなく、直接表示されます。 つまり:
二重引用符は文字のエスケープを実行しますが、一重引用符はエスケープ文字を実行しません。5. エスケープ文字 (バックスラッシュの使用)
変数 $beizi を宣言し、出力を表示するために $beizi で宣言された二重引用符の間に二重引用符を追加したい場合はどうすればよいでしょうか? <?php
//要在$beizi的字符串中显示一个双引号怎么办?
$beizi = "多于绝大多数的人出生就是杯具,但是"我们在不断的让人生变为喜剧";
echo $beizi;
?>
上記のようにコードを記述すると、コードはエラーを報告します。エラーの結果は次のとおりです: なぜなら、文字列: 「大多数の人は障害を持って生まれてきますが、「私たちは常に人生をコメディにしています」という文字列を二重引用符で囲んで記述する必要があります。そして、二重引用符 引用符。これは、文字列ステートメントが「but」で終わることを意味します。
答え: 二重引用符の本来の意味を削除し、(バックスラッシュ) を追加する必要があります。コンピューターはエスケープ文字です)
の前にあります。<?php //要在$beizi的字符串中显示一个双引号怎么办? $beizi = "多于绝大多数的人出生就是杯具,但是\"我们在不断的让人生变为喜剧"; echo $beizi; ?>
上記のコードを再度実行すると、エラーが報告されなくなっていることがわかります。同様に、シングルクォーテーションの中にシングルクォーテーションを挿入して表示したい場合、シングルクォーテーションで宣言された文字列のシングルクォーテーションの前に(バックスラッシュ、エスケープ文字)を追加することで意味を変更することもできます。一重引用符 (制限された文字範囲) が削除されました。
<?php //要在$beizi的字符串中显示一个双引号怎么办? $shengyang = 'i\'m xiaoshengyang'; echo $shengyang; ?>
6. 二重の数字と一重引用符を相互に挿入できます。 ! !二重引用符の間に一重引用符を挿入し、一重引用符の間に変数を挿入すると、変数が解析されます。
コードは次のとおりです:
<?php $legend = '猛虎'; $NoAlike = "心有'$legend',细嗅蔷薇"; echo $NoAlike; ?>
実行結果は次のとおりです:
7. 魔法の文字列接続接着剤 - (.) ドット、文字列を接続するために使用されます。
<?php $php = 'PHP中文网'; //中间加了空格哟 $str = "{$php}aaaa"; echo $str; ?>
上記のコードは、二重引用符は変数を解析できると以前述べましたが、問題があります:
効率は純粋な一重引用符ほど高くありません
次に、質問 1: に変更したいです。最も効率的な方法はどうすればよいでしょうか?
質問 2: 複数の文字列があります。それらをつなぎ合わせたい場合はどうすればよいですか?
次に、魔法の接着剤を使用する必要があります: (.) ドットを使って文字列をつなぎます。
<?php $shixi = '大学4年要好好学习<br />'; $buran = '不然连实习的机会都没有<br />'; $mimang = '把别人用来迷茫的时间拿到PHP中文网<br />'; $xuexi = '学习PHP<br />'; //我们可以把字符串全部拼接起来。 echo $shixi . $buran . $mimang . $xuexi; ?> 因此,刚刚的问题一的代码我们可以改为: <?php $php = 'PHP中文网'; //中间加了空格哟 $str = $php . 'aaaa'; echo $str; ?>
8. 区切り文字宣言文字列を二重引用符と同じ関数として扱います。
<?php $weilai = '努力才有未来'; $mimang = '迷茫的原因是没有目标'; $dingjie = <<<ABC 如果 $weilai 非要\t在这"个滚"犊子 前 '$mimang' 面<br /> 加上\n一段 <i>距离的话</i> 我想说:<h1>思想有多远,你就跟我滚多远</h1> ABC; echo $dingjie; ?>
実行してみると、$weilai、$mimang、tnはすべて実行でき、二重引用符と一重引用符が表示できることがわかります。これが区切り文字の特徴です。
宣言をもう一度: 文字列宣言内のすべての項目は覚えておく必要があり、これは非常に一般的です。そして面接の質問が出る確率は非常に高いです!
不可視文字:主にコンピュータによって指定された一部の特殊記号。例: 復帰 (n)、インデント (t) など。
二重引用符は変数を実行するため、