「PHP/入門/テキスト表示とコメント」の版間の差分

出典: フリー教科書『ウィキブックス(Wikibooks)』
< PHP
削除された内容 追加された内容
編集の要約なし
編集の要約なし
1 行 1 行
==テキストの入力==
==テキストの入力==
PHPでテキスト入力したい場合、例えば下記のようになります。

;コード例
;コード例
<syntaxhighlight lang="PHP">
<syntaxhighlight lang="PHP">
25 行 27 行
PHPは <code><?php</code> と <code>?></code> の間のコードを処理します。
PHPは <code><?php</code> と <code>?></code> の間のコードを処理します。


print 関数で、文字列を書けます。
print 関数で、文字列を書けます。正確にいうと、print関数は、PHPの生成したhtmlに、引数にしている文字列を代入する関数です。(echoも同様。)



なお、改行をするにはタグ <nowiki><br /></nowiki> が必要です。
なお、改行をするにはタグ <nowiki><br /></nowiki> が必要です。
46 行 49 行




さて、webブラウザで、ローカルホストのページを見に行き、ブラウザ側でwebページの保存をすると、
さて、webブラウザで、上記のローカルホストのページを見に行きましょう。


webアドレスの末尾に「.php」とついているかもしれませんが、しかし、webブラウザが見ているのは実は html ファイルです。
保存されるhtmlファイルのソースコードを見てみと、


サーバー側で既にhtmlファイルに変換されています。
上記PHPコードから <code><?php</code> と <code>?></code> のタグの除去、およびその内側のPHPコード群が除去された結果になっています。

ブラウザのソースコード閲覧機能を使ってソースコードを見ても
<syntaxhighlight lang="PHP">
<html>
<head>
<title>サンプル123</title>
</head>

<body>

Hello World!<br />こんにちは<br />
</body>
</html>
</syntaxhighlight>
というhtmlファイルのソースコードが表示されだけです。

よくみると、サーバー側のPHPコードとは、微妙に内容が違います。


ブラウザ側のコードは、サーバー側のソースコードから <code><?php</code> と <code>?></code> のタグの除去、およびその内側のPHPコードの命令(print など)が除去された結果になっています。

ブラウザの「ファイル」>「名前をつけてページを保存」の機能を使って保存されるファイルも同様に、たとえファイル名に.phpとついていても、webブラウザで保存されるのは変換されたhtmlファイルです。

つまり、webブラウザで表示されるソースコードと、サーバー側のソースコードとは、たといもし同じファイル名であっても、実はコードが異なります。(もっとも、通常ブラウザ側のファイル名はtitleタグで命名されている名称なので、サーバー側のファイル名とは異なるのが通常であるが。)




105 行 132 行


このように、コメントアウトした内容は、非表示になります。
このように、コメントアウトした内容は、非表示になります。

コメントアウトした内容は、htmlに変換される時点で、除去されています。
その証拠にwebブラウザのソースコード閲覧の機能を使っても、コメントアウトの内容は除去されています。

PHPでコメントアウトしても、けっしてhtmlの非表示タグ<nowiki> <!-- --> </nowiki>になるわけではないので、混同しないようにしましょう。



{{スタブ}}
{{スタブ}}

2020年5月8日 (金) 14:46時点における版

テキストの入力

PHPでテキスト入力したい場合、例えば下記のようになります。

コード例
<html>
<head>
<title>サンプル123</title>
</head>

<body>

<?php
	print "Hello World!<br />";
	print "こんにちは<br />";	
?>

</body>
</html>
結果
Hello World!
こんにちは
解説

PHPは <?php?> の間のコードを処理します。

print 関数で、文字列を書けます。正確にいうと、print関数は、PHPの生成したhtmlに、引数にしている文字列を代入する関数です。(echoも同様。)


なお、改行をするにはタグ <br /> が必要です。

もし文字列の文末でも、この改行タグ <br /> が無いと、標示の結果は文字を改行せずに次の文字を表示してしまいます。


つまり、

<?php
	print "Hello World!";
	print "こんにちは";	
?>

だと、

Hello World!こんにちは

という、一続きの出力になってしまう。


さて、webブラウザで、上記のローカルホストのページを見に行きましょう。

webアドレスの末尾に「.php」とついているかもしれませんが、しかし、webブラウザが見ているのは実は html ファイルです。

サーバー側で既にhtmlファイルに変換されています。

ブラウザのソースコード閲覧機能を使ってソースコードを見ても

<html>
<head>
<title>サンプル123</title>
</head>

<body>

Hello World!<br />こんにちは<br />
</body>
</html>

というhtmlファイルのソースコードが表示されるだけです。

よくみると、サーバー側のPHPコードとは、微妙に内容が違います。


ブラウザ側のコードは、サーバー側のソースコードから <?php?> のタグの除去、およびその内側のPHPコードの命令群(print など)が除去された結果になっています。

ブラウザの「ファイル」>「名前をつけてページを保存」の機能を使って保存されるファイルも同様に、たとえファイル名に.phpとついていても、webブラウザで保存されるのは変換されたhtmlファイルです。

つまり、webブラウザで表示されるソースコードと、サーバー側のソースコードとは、たといもし同じファイル名であっても、実はコードが異なります。(もっとも、通常ブラウザ側のファイル名はtitleタグで命名されている名称なので、サーバー側のファイル名とは異なるのが通常であるが。)


html部分とprint関数の関係

さて、htmlでも文字列を書けるので、phpのprint 関数の文字列表示とは、どういう関係になっているのでしょうか?

論より証拠、実際に下記コードのphpプログラムを書いてアップロードしてみて、webブラウザで閲覧してみて確かめましょう。

<html>
<head>
<title>サンプル123</title>
</head>

<body>
ここは、phpタグの外です。<br />
<?php
	print "ここからphpタグ内側<br />";
	print "Hello World!<br />";
	print "こんにちは<br />";	
?>
phpタグを脱出。
</body>
</html>

画面部分の表示結果は、下記のようになります

結果
ここは、phpタグの外です。
ここからphpタグ内側
Hello World!
こんにちは
phpタグを脱出。 

です。

コメントの入力

コメントを入力するには、「//」を使いましょう。

<?php
print "こんにちは<br />"; // ここからコメント
// 各行で単独でコメントを使うこともできる
?>
結果
こんにちは

です。


このように、コメントアウトした内容は、非表示になります。

コメントアウトした内容は、htmlに変換される時点で、除去されています。 その証拠にwebブラウザのソースコード閲覧の機能を使っても、コメントアウトの内容は除去されています。

PHPでコメントアウトしても、けっしてhtmlの非表示タグ <!-- --> になるわけではないので、混同しないようにしましょう。


このページ「PHP/入門/テキスト表示とコメント」は、まだ書きかけです。加筆・訂正など、協力いただける皆様の編集を心からお待ちしております。また、ご意見などがありましたら、お気軽にトークページへどうぞ。