簡単! php の仕組み
php の仕組み。
html = xxx.html
php = abc.php
ここに html のコードがあります。
以下のように表示されます。

これは、上記の 「gokuu.html」 を表示した結果です。サーバーに置いてあった gokuu.html の内容がそのままあなたのブラウザに送信され、ブラウザがそれを表示しました。
php だと何ができるでしょう?
このように表示されます。

<!DOCTYPE HTML ~ 最後の </html> までは、色を付けた部分以外は同じです。php をかくときは基本、html の上部分に php のコードを記述すればよいのです。
<?php echo $str; ?>
の部分が、「ぼく悟飯、よろしくね」を出力しています。
プログラムの上の部分で、変数 $str に $str = "ぼく悟飯、よろしくね" ; として代入していたものを、この部分で出力しています。
echo $str ; を
echo "ぼく悟飯、よろしくね" ;
としても同じ結果が得られます。
echo ... というのは、出力する、という命令です。
echo というのは php の命令なのですが、php の命令をさせたい場合は、
<?php ~ ?>
で囲む決まりになっています。
なにも $str を、プログラムの上の部分で 代入しなくても、
<?php $str = "ぼく悟飯、よろしくね" ; echo $str; ?>
としても大丈夫です。命令の最後には、セミコロン「;」を付け、文を区切ります。<?php ~ ?>で囲めばいくつの文でも実行できます。
html の上部分に php のプログラムを書くといいましたが、その部分も <?php ~ ?> で囲まれていることに気づくでしょうか。 囲みさえすれば php の命令ができるということです。
そのように、サーバ上で html にあたる 内容が 埋め込みで 生成され、生成されたものが、あなたのブラウザに送られてきます。
おわかりになられたでしょうか。これを、サイトが動的に生成されるといいます。
とにかく、<?php ~ ?> で囲めば命令ができるのですから、応用して、次のような便利なこともできます。
繰り返しの構文、for 文のところが、巧妙に入り組んでいます。
以下のように表示されます。

<h1><font size="1">おっすおら悟空</font></h1>
<h1><font size="2">おっすおら悟空</font></h1>
<h1><font size="3">おっすおら悟空</font></h1>
<h1><font size="4">おっすおら悟空</font></h1>
<h1><font size="5">おっすおら悟空</font></h1>
<h1><font size="6">おっすおら悟空</font></h1>
<h1><font size="7">おっすおら悟空</font></h1>
と、全く同じ意味ですが、このように 7行書かなくてはいけない手間が、php のプログラミングで省けました。この場合は、上のように7行実際に書くことで html でも同じことができますが、もっと細かいことをやりたいとき、php でなければできないことも多々あります。
1, 2, 3, 4, 5, 6, 7 に当たる場所に、<?php echo $i; ?> が埋め込まれているのがわかりますね。for 文によって、$i が 1から7 まで順に繰り返され変化していきます。
php では、データベースを扱うことができますが、それとこの方法を組み合わせれば、たとえば表(<table> ~ </table> ) を動的に作ったりすることができ、様々なデータを扱うほかのいろいろなホームページは、そのようにして成り立っています。
さて、このような php プログラムを自分で書いても、そのままでは実行できません。
ブラウザは、html をそのまま表示するものなので、php の計算はしてはくれません。わかりますか?php の計算はサーバー側がやるものなのです。サーバーと同じものが、自分のパソコンの中にも必要なのです。そう、自分のパソコンをサーバーのようにしなくてはなりません。
無料で始める方法は無理のないように存在していて、apache というサーバーソフトを導入します(マイクロソフトのサーバーもあると思うのですがよく知りません)。また、php も導入します。さらに、MySQL というデータベースも導入します。多くの人がこの組み合わせを利用していて、問題はない感じです。
これに関しては、apache 、php、MySQL を調べてください。すべて入門からいろいろな手引きがネット上に存在しています。
ここではダウンロードのサイトだけ紹介しておきます。
Download apache
Download php
Download MySQL
※php には大きい潮流として、5 と 7 がありますが、レンタルサーバーが 7 に対応していれば問題ないです。レンタルサーバーと相談です。5 を入れておくと無難ですが、移行したりする場合面倒な事にもなるので 7 がサーバーで利用可能なら 7 かな。でも、とはいいつつ僕は 5 で始めて、いまも 5 だったかな…。
これら3つを統括してくれる xampp というものも存在してくれます。いろいろな設定を簡便に行うことができます。
また、作った phpで作ったホームページを公開する際には、サーバーにアップロードしますが、php を使うには、サーバーが phpに対応していないといけません。ホームページを公開する方法として普通、レンタルホームページ、レンタルサーバーの方法がありますが、php が使えるのは レンタルサーバーのほうだと思います。腕試しの場合はレンタルサーバーを利用できるでしょう。
php に対応しているのであれば、あとは、サーバーに配置するだけで、php は有効に働きます。
以上です。がむばれ!
html = xxx.html
php = abc.php
ここに html のコードがあります。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<!-- gokuu.html -->
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>HTML のテスト</title>
</head>
<body>
<h1>おっすおら悟空</h1>
</body>
</html>
以下のように表示されます。

これは、上記の 「gokuu.html」 を表示した結果です。サーバーに置いてあった gokuu.html の内容がそのままあなたのブラウザに送信され、ブラウザがそれを表示しました。
php だと何ができるでしょう?
<?php header("Content-Type:text/html;charset=utf-8"); ?>
<?php
/* gokuu.php */
$str = "ぼく悟飯、よろしくね" ;
// この部分はおまじない。
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>php のテスト</title>
</head>
<body>
<h1>おっすおら悟空 <?php echo $str; ?></h1>
</body>
</html>
このように表示されます。

<!DOCTYPE HTML ~ 最後の </html> までは、色を付けた部分以外は同じです。php をかくときは基本、html の上部分に php のコードを記述すればよいのです。
<?php echo $str; ?>
の部分が、「ぼく悟飯、よろしくね」を出力しています。
プログラムの上の部分で、変数 $str に $str = "ぼく悟飯、よろしくね" ; として代入していたものを、この部分で出力しています。
echo $str ; を
echo "ぼく悟飯、よろしくね" ;
としても同じ結果が得られます。
echo ... というのは、出力する、という命令です。
echo というのは php の命令なのですが、php の命令をさせたい場合は、
<?php ~ ?>
で囲む決まりになっています。
なにも $str を、プログラムの上の部分で 代入しなくても、
<?php $str = "ぼく悟飯、よろしくね" ; echo $str; ?>
としても大丈夫です。命令の最後には、セミコロン「;」を付け、文を区切ります。<?php ~ ?>で囲めばいくつの文でも実行できます。
html の上部分に php のプログラムを書くといいましたが、その部分も <?php ~ ?> で囲まれていることに気づくでしょうか。 囲みさえすれば php の命令ができるということです。
html の場合は、サーバーにある (htmlの) ファイルが”そのまま” 送られてきて、それをあなたのブラウザが表示しますが、php の場合は、”そのまま” ではありません。サーバーはこちらに送る前にphpの計算(命令を実行)をします。サーバ上で、上で述べた <?php ~ ?> の部分の命令が 上から順に実行されていきます。php の命令はたくさんの種類がありますが、今は echo について説明すると、echo ... は、その(html記述の)場所に 出力=つまり、html のコードを ”埋め込む” のです。echo のほかに、print, print_r などの出力の命令があります。実際、出力関数以外の関数はまさにいろいろなことを実行するだけです。
そのように、サーバ上で html にあたる 内容が 埋め込みで 生成され、生成されたものが、あなたのブラウザに送られてきます。
おわかりになられたでしょうか。これを、サイトが動的に生成されるといいます。
とにかく、<?php ~ ?> で囲めば命令ができるのですから、応用して、次のような便利なこともできます。
<?php header("Content-Type:text/html;charset=utf-8"); ?>
<?php
/* gokuu-2.php */
// 普通はこの部分でいろいろな命令を行いますが、理屈としては何もしなくても問題ないわけです。
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<title>php のテスト(2)</title>
</head>
<body>
<?php for($i=1;$i<=7;$i++) { ?>
<h1><font size="<?php echo $i; ?>">おっすおら悟空</font></h1>
<?php } ?>
</body>
</html>
繰り返しの構文、for 文のところが、巧妙に入り組んでいます。
以下のように表示されます。

<h1><font size="1">おっすおら悟空</font></h1>
<h1><font size="2">おっすおら悟空</font></h1>
<h1><font size="3">おっすおら悟空</font></h1>
<h1><font size="4">おっすおら悟空</font></h1>
<h1><font size="5">おっすおら悟空</font></h1>
<h1><font size="6">おっすおら悟空</font></h1>
<h1><font size="7">おっすおら悟空</font></h1>
と、全く同じ意味ですが、このように 7行書かなくてはいけない手間が、php のプログラミングで省けました。この場合は、上のように7行実際に書くことで html でも同じことができますが、もっと細かいことをやりたいとき、php でなければできないことも多々あります。
1, 2, 3, 4, 5, 6, 7 に当たる場所に、<?php echo $i; ?> が埋め込まれているのがわかりますね。for 文によって、$i が 1から7 まで順に繰り返され変化していきます。
php では、データベースを扱うことができますが、それとこの方法を組み合わせれば、たとえば表(<table> ~ </table> ) を動的に作ったりすることができ、様々なデータを扱うほかのいろいろなホームページは、そのようにして成り立っています。
さて、このような php プログラムを自分で書いても、そのままでは実行できません。
ブラウザは、html をそのまま表示するものなので、php の計算はしてはくれません。わかりますか?php の計算はサーバー側がやるものなのです。サーバーと同じものが、自分のパソコンの中にも必要なのです。そう、自分のパソコンをサーバーのようにしなくてはなりません。
無料で始める方法は無理のないように存在していて、apache というサーバーソフトを導入します(マイクロソフトのサーバーもあると思うのですがよく知りません)。また、php も導入します。さらに、MySQL というデータベースも導入します。多くの人がこの組み合わせを利用していて、問題はない感じです。
これに関しては、apache 、php、MySQL を調べてください。すべて入門からいろいろな手引きがネット上に存在しています。
ここではダウンロードのサイトだけ紹介しておきます。
Download apache
Download php
Download MySQL
※php には大きい潮流として、5 と 7 がありますが、レンタルサーバーが 7 に対応していれば問題ないです。レンタルサーバーと相談です。5 を入れておくと無難ですが、移行したりする場合面倒な事にもなるので 7 がサーバーで利用可能なら 7 かな。でも、とはいいつつ僕は 5 で始めて、いまも 5 だったかな…。
これら3つを統括してくれる xampp というものも存在してくれます。いろいろな設定を簡便に行うことができます。
また、作った phpで作ったホームページを公開する際には、サーバーにアップロードしますが、php を使うには、サーバーが phpに対応していないといけません。ホームページを公開する方法として普通、レンタルホームページ、レンタルサーバーの方法がありますが、php が使えるのは レンタルサーバーのほうだと思います。腕試しの場合はレンタルサーバーを利用できるでしょう。
php に対応しているのであれば、あとは、サーバーに配置するだけで、php は有効に働きます。
以上です。がむばれ!