あちあち情報局

趣味や日曜プログラムなどを書いています

ユーザ用ツール

サイト用ツール


php:php_print-echo

差分

この文書の現在のバージョンと選択したバージョンの差分を表示します。

この比較画面にリンクする

次のリビジョン
前のリビジョン
php:php_print-echo [2018/12/30 13:34]
管理者 作成
php:php_print-echo [2019/01/13 22:25] (現在)
管理者 [ダブルクォーテーション]
ライン 2: ライン 2:
 PHPで文字を表示するには ''​echo''​ を使用します。(''​print''​命令やecho短縮構文などでも表示する事はできますが、通常利用であれば echo命令 だけ知っていればよいです) PHPで文字を表示するには ''​echo''​ を使用します。(''​print''​命令やecho短縮構文などでも表示する事はできますが、通常利用であれば echo命令 だけ知っていればよいです)
  
-<​html>​ 
-<​style>​ 
-  .demo{border:​1px solid gray} 
-</​style>​ 
-</​html>​ 
 ---- ----
-===== 使い方 =====+===== 基本的な使い方 =====
  
-==== 文字列表示 ====+===== 文字列表示 ​=====
  
-echoに続きシングルクォーテーションで出力したい文字列を囲みます。注意:シングルクォーテーション中でシングルクォーテーションはそのまま使ません。後述の「シングルクォーテーションを表示るには」を参照して下さい+文字列を出力する場合は出力する文字列をシングルクォーテーションで囲みます。 
 + 
 +注意点は、「I'​m sorry」などシングルクォーテーションを含む文字列は使用できません。(解決策は後述のダブルクォーテーションを使います)
  
-サンプル 
 <code php> <code php>
 <?php <?php
ライン 20: ライン 16:
 ?> ?>
 </​code>​ </​code>​
-デモ+ 
 +**結果** 
 <php> <php>
-  echo '<​div class="​demo">';​ 
   echo '<​p>​Hello World</​p>';​   echo '<​p>​Hello World</​p>';​
-  echo '</​div>';​ 
 </​php>​ </​php>​
  
-==== 変数の表示 ​==== +==== ダブルクォーテーション ​==== 
-変数はシングルクォーテーションでず直接記述すると内容表示されます。(誤ってシングルク囲むと変数名が表示されます+シングルクォーテーション時は文字列しか出力せんでした、ダブルクテーション変数や特殊文字(改行や記号などのエスケープシーケンス)を出力できます
  
 +注意点は、文字列中の「\」「"​」と「$」(変数以外で)を使用する場合はこの各文字の前に半角バックスラッシュ「\」をつけ、「\\」「\"​」「\$」として下さい(半角バックスラッシュは言語設定などにより「¥」(半角円記号)と表示される場合があります)。また単純な文字列出力の場合はシングルクォーテーションより処理速度が遅くなります。
  
-サンプル 
 <code php> <code php>
 <?php <?php
-  $name='山田太郎'; +  $str='Hello World'; 
-  $age=20; +  echo '<​p>​シングル:$str ・・変数展開不可</​p>​'; 
- +  echo "<​p>​ダブル:$str ・・・変数展開可能</p>"
-  echo '<​p>​名前は';​ +  echo "<p>ダブル:\$str ・・・エスケープシーケンスで変数を展開しない</p>"
-  echo $name; +  echo "<​p>​ダブル:\'\" ​' ​・・エスケープシーケンスでダブルとシングルクートを表示可能</p>";
-  echo '​、年齢は'; +
-  echo $age; +
-  echo '歳</p>'+
-  echo '<p>誤って囲ってしまうと下記のように変数名が表示されます<br>'+
-  echo '$name'; //シングルクートあり +
-  echo '</p>';+
 ?> ?>
 </​code>​ </​code>​
-デモ+ 
 +**結果** 
 <php> <php>
-  ​echo '<​div class="​demo">';​ +  $str='Hello World'; 
-  ​$name='山田太郎'; +  echo '<​p>​シングル:$str ・・変数展開不可</​p>​'; 
-  $age=20; +  echo "<​p>​ダブル:$str ・・・変数展開可能</p>"
- +  echo "<p>ダブル:\$str ・・・エスケープシーケンスで変数を展開しない</p>"
-  echo '<​p>​名前は';​ +  echo "<​p>​ダブル:\'\" ​' ​・・エスケープシーケンスでダブルとシングルクートを表示可能</p>";
-  echo $name; +
-  echo '​、年齢は'; +
-  echo $age; +
-  echo '歳</p>'+
-  echo '<p>誤って囲ってしまうと下記のように変数名が表示されます<br>'+
-  echo '$name'; //シングルクートあり +
-  echo '</p>'; +
-  echo '</​div>'​;+
 </​php>​ </​php>​
  
-==== 文字列の接続 ====+** エスケープシーケンス **
  
-''​.''​半角ドット使用すると複数を接する事がきます。+次の文字記述すると説明文字が表示されます。 
 + 
 +^記述^説明^ 
 +|\\|\を表示、\x5Cの記述と同じ| 
 +|\$|$を表示、\x24の記述と同じ| 
 +|\n|復帰(carriage return)、\x0Dの記述と同じ| 
 +|\r|改行(newline)、\x0Aの記述と同じ| 
 +|\t|タブ、\x09の記述と同じ| 
 +|\"​|"​を表示、\x22の記述と同じ| 
 +|\'​|'​を表示、\x27の記述と同じ| 
 +|\(|(を表示、\x28の記述と同じ| 
 +|\)|)を表示、\x29の記述と同じ| 
 +|\[|[を表示、\x5Bの記述と同じ| 
 +|\]|]を表示、\x5Dの記述と同じ| 
 +|\x??​|文字コードから表示(??​は16進数00~FF)、\x41\x42ならABと表示| 
 + 
 +===== 高度な使い方 ===== 
 + 
 +==== 直接表示 ==== 
 + 
 +変数や数字表示する場合にはシングルクォーテーションやダブルクォーテーションは不要です。
  
-サンプル 
 <code php> <code php>
 <?php <?php
-  $name='山田太郎'; +  $str='Hello World'; 
-  $age=20; +  ​echo '<​p>';​ 
- +  echo $str
-  echo '<​p>​名前は'.$name.'、年齢は'.$age.'</​p>';​+  echo '</p>'
 +  echo '<p>'
 +  echo 12345; 
 +  echo '</​p>';​
 ?> ?>
 </​code>​ </​code>​
-デモ+ 
 +**結果** 
 <php> <php>
-  ​echo '<​div class="​demo">​'; +  ​$str='Hello World'; 
-  ​$name='山田太郎'; +  ​echo '<p>'; 
-  $age=20; +  ​echo $str
- +  echo '</p>'
-  echo '<​p>​名前は'.$name.'​、年齢は'​.$age.'</p>';​ +  echo '<​p>'​
-  echo '</div>';+  echo 12345
 +  echo '</p>';
 </​php>​ </​php>​
  
-==== ダブルクォーテーション ​==== +==== 文字列の接続 ​====
-ダブルクォーテーションで囲むと文字列中の変数やエスケープシーケンス(/​で始まる特殊文字)を解釈します。+
  
-注意1:ダブルクォーテーション中でダブルクォーテーションはそのまま使えません。後述「ダブルクォーテーション表示するには」を参照して下さい+''​.''​半角ドットを使用すると複数接続する事ができます。
  
-注意2:変数の後にはスペースを入れないと正しく展開できない事があります。例えば下記の場合は ''​$name''​と''​、''​の間にスペースを入れないと表示されません。 
- 
-サンプル 
 <code php> <code php>
 <?php <?php
   $name='​山田太郎';​   $name='​山田太郎';​
-  $age=123; +  $age=20
- +  echo '<​p>​名前は'.$name.'、年齢は'.$age.'歳</​p>​';
-  echo "<​p>​名前は$name 、年齢は$age 歳</​p>";​ +
-  //​注:変数の後ろにスペースを入れないと正しく表示できない事がある +
-  //​スペースを入れたくなければ区切って 「.」で繋げて回避 +
-  //echo "<​p>​名前は$name"​."​年齢は$age"."歳</​p>​";+
 ?> ?>
 </​code>​ </​code>​
-デモ 
-<php> 
-  echo '<​div class="​demo">';​ 
-  $name='​山田太郎';​ 
-  $age=123; 
  
-  echo "<​p>​名前は$name 、年齢は$age 歳</​p>";​ +**デモ**
-  echo '</​div>';​ +
-</​php>​+
  
-通常はシングルクォーテーションを使った方が誤表示の問題が無く変数やエスケープシーケンスの確認時間が無いため高速です。しかしシングルクォーテーションで複数の文字列や変数を接続する場合は ''​.''​ ''​%%'​%%''​ が多くなるのでダブルクォーテーションを使用した方が見いソースコードになります。 
- 
- 
-==== シングルクォーテーションを表示するには ==== 
-シングルクォーテーション中にシングルクォーテーションは使えないので下記のように対処して下さい。 
- 
-サンプル 
-<code php> 
-//​ダブルクォーテーションで囲む 
-echo "<​p>​「'​」シングルクォーテーションを表示できます</​p>";​ 
-//​部分的に使う場合は「"'"​」だけ分けて.で接続 
-echo '<​p>​「'​."'"​.'​」<シングルクォーテーションを使えます</​p>';​ 
-</​code>​ 
- 
-デモ 
 <php> <php>
-  ​echo '<div class="​demo">​'; +  ​$name='山田太郎'; 
-//​ダブルクォーテーションで囲む +  ​$age=20;​ 
-echo "<​p>​「'」シングルクォーテーションを表示できます</p>"; +  echo '<​p>​名前'​.$name.'、年齢は'.$age.'</​p>';​
-//​部分的に使う場合は.で接続 +
-echo '<​p>​「'."'"​.'」<シングルクォーテーションを使えます</p>';​ +
-  echo '</​div>';+
 </​php>​ </​php>​
  
-==== ダブルクォーテーションを表示するには ​==== +==== 変数計算 =====
-ダブルクォーテーション中にダブルクォーテーションは使えないので下記のように対処して下さい。+
  
-サンプル +計算が可能です。他の文字や数字と接続する場合は式を''​()''​で囲む必要があります。
-<code php> +
-//​シングルクォーテーションで囲む +
-echo '<​p>​「"​」ダブルクォーテーションを表示できます</​p>';​ +
-//​変数を展開したい場合はダブルクォーテーション部分と変数部を分けて.で接続 +
-$name='​山田太郎';​ +
-echo '<​p>​「"​」ダブルクォーテーション部と「'​."​$name"​.'​」変数部を分ける</​p>';​ +
-</​code>​ +
- +
-デモ +
-<​php>​ +
-  echo '<​div class="​demo">';​ +
-//​シングルクォーテーションで囲む +
-echo '<​p>​「"​」ダブルクォーテーションを表示できます</​p>';​ +
-//​変数を展開したい場合はダブルクォーテーション部分と変数部を分けて.で接続 +
-$name='​山田太郎';​ +
-echo '<​p>​「"​」ダブルクォーテーション部と「'​."​$name"​.'​」変数部を分ける</​p>';​ +
-  echo '</​div>';​ +
-</​php>​ +
-==== 変数計算 ===== +
-echo中でも計算が可能です。他の文字や数字と接続する場合は式を''​()''​で囲む必要があります。+
  
-サンプル 
 <code php> <code php>
 <?php <?php
ライン 172: ライン 126:
   echo '<​p>';​   echo '<​p>';​
   echo $x+$y+3; //​単独なら()不要   echo $x+$y+3; //​単独なら()不要
-  echo '<br>';+  echo '</​p>';​ 
 +  echo '<p>';
   echo '​答えは='​.($x+$y+3).'<​br>';​ //​他の文字と接続する時は()が必要   echo '​答えは='​.($x+$y+3).'<​br>';​ //​他の文字と接続する時は()が必要
   echo '</​p>';​   echo '</​p>';​
 ?> ?>
 </​code>​ </​code>​
-デモ+ 
 +**デモ** 
 <php> <php>
-  echo '<​div class="​demo">';​ 
   $x=1;   $x=1;
   $y=2;   $y=2;
   echo '<​p>';​   echo '<​p>';​
   echo $x+$y+3; //​単独なら()不要   echo $x+$y+3; //​単独なら()不要
-  echo '<br>';+  echo '</​p>';​ 
 +  echo '<p>';
   echo '​答えは='​.($x+$y+3).'<​br>';​ //​他の文字と接続する時は()が必要   echo '​答えは='​.($x+$y+3).'<​br>';​ //​他の文字と接続する時は()が必要
   echo '</​p>';​   echo '</​p>';​
php/php_print-echo.1546144440.txt.gz · 最終更新: 2018/12/30 13:34 by 管理者