HOME › 学科ブログ › 連載講座:『PHP入門』第4回 ~プログラミング開始~
2011年10月18日
CG・Webクリエイター科の水谷です。
土曜日に、また石鎚へ行きました。
テレビの予報では雨でしたが、『てんきとくらす』の予報を信じて、登ってみました。
この1週間で、瓶ヶ森や西黒森の紅葉が進んでいました。

図1.瓶ヶ森から紅葉の西黒森を眺望
(紅葉がきれいでしたが、雲なんだか、霧なんだか、・・・青空が欲しかった。)
この日の予報では、「西日本大荒れ・・・」とか言われていてので、雨が降らなかっただけ、良かったと思うことに。
実際、石鎚スカイラインでは、唯一林道パトロールの車とすれ違っただけだし、
瓶ヶ森は登山して、山頂で写真とって、下山するまで、誰ともすれ違いませんでした。
本日のテーマは
しばらくぶりですが、またお付き合い下さい。
なお、PHPプログラミングでは、「メモ帳」では支障があります。
「PHPエディタ」か、「サクラエディタ」が欲しいところです。
今回の記事の最後で、ダウンロードとインストールを解説します。
(『PHP入門』第2回と『PHP入門』第3回で、ダウンロードとインストールをさんざん書きましたので・・・。)
"XAMPP Control Panel" で、"Apache" が Start させていることを確認。
”Running” にして下さい。 (参照:連載講座:『PHP入門』第3回 ~インストール(2/2)~ Step4 図5)
こうしないと、PHPが実行されません。
前回のサンプルでは、今の日付と時間を表示しました。
(参照:連載講座:『PHP入門』第3回 ~インストール(2/2)~ Step5.サンプルプログラム)
サンプルを実行する手順の説明は省略しますので、前回の記事を読み返して下さい。
HTML と、PHPプログラムの部分を再度掲載しておきます。
(説明のために色をつけています。入力には無関係ですので、色は無視して下さい。)
コピー&ペーストして、ご利用下さい。
【 List 01 】
------------------------------ ここから ------------------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=shift_jis">
<title>PHP sample</title>
</head>
<body>
PHPのdate()関数の表示。<br><br>
<!-- ここが PHP のサンプル -->
<?php
$today = date("Y/m/d l H:i:s");
print($today);
?>
</body>
</html>
------------------------------ ここまで ------------------------------
赤文字部分が、PHPのプログラムです。
(1) $today:変数・・・一時的に「値」を格納しておく場所に、"today" という名前を付けたものです。
人が計算問題を解くとき、途中の「値」を紙にメモるのと同様に、
コンピュータがプログラムを実行して行く場合にも、一時的に「値」を格納しておく場所が必要です。
(2) date("Y/m/d l H:i:s"):現在日時を「フォーマット」して返します。
決まった処理をする単位で、「関数」 と言います。下記 (5) の print() も関数です。
「フォーマット」って言うのは、無理やり訳すと「書式」。ですが、
ここでは、日時が分かりやすく整えてくれてるっていう程度で、先に進みましょう。
(3) = :右辺を左辺に代入します。上記(2) で得られた結果を、後で使えるように (1) に代入します。
(4) ;:行の最後にセミコロンがついています。これはお約束です。
日本語の文章にも句読点があるように、PHPプログラムにはセミコロンが必要です。
(5) print:「プリント」と読みます。
上記 (1) に格納してある途中結果を、HTML の形式で出力することにより、Webページに反映されます。
上記 (2) で 「関数」 だと説明しました。異なるプログラミング言語では、「サブルーチン」 とか 「メソッド」
とも言いますが、本質的には同じです。
黒字部分は、ウェブサイトを記述する HTML です。ここでは、<body> ~ </body> の中に記述したものが
ブラウザ(Internet Explorer や Firefox など)で表示されます。
<・・・> を 「タグ」 といいます。この 「タグ」 はWebページには表示されません。
PHP を学ぼうとすると、同時に HTML や CSS の知識も必要になります。
この連載では、なるべく PHP 限定で解説しますので、HTML や CSS に関しては、
連載講座:『HTML&CSS入門』第1回 ~スタイルシートって?~
などを参考にして下さい。
ところで、このサンプルを実行すると、一見それらしい日付と時間が表示されますが、
実は数時間狂っている、って言う場合もあるようです。
(私のPC環境では、7時間ずれていました。)
原因は、上記(2) の date() 関数が、サーバーの時間を取ってきているからです。
サーバのローカル時間と、日本時間がずれている場合は、gmdate() 関数を利用しましょう。
PHP の部分だけ記載しました。【 List 01 】 の赤字部分を下記の赤字部分に修正してみてください。
(説明のために色をつけています。入力には無関係ですので、色は無視して下さい。)
コピー&ペーストして、ご利用下さい。
【 List 02 】
------------------------------ ここから ------------------------------
<!-- ここが PHP のサンプル -->
<?php
$time = time() + 9*3600; //GMTとの時差9時間を足す
$today = gmdate("Y/m/d l H:i:s ", $time);
print($today);
?>
------------------------------ ここまで ------------------------------
(1) $time:変数・・・【 List 01 】 の $today と同様に、一時的に「値」を格納しておく場所で、
今度は "time" という名前を付けました。プログラミングでは、このように都合よく、変数を作ってゆきます。
(2) time():関数・・・【 List 01 】 の date() と同様に、PHP にはたくさんの関数が用意されています。
Unixタイムスタンプとして、1970年1月1日 00:00:00 からの経過秒数を取得します。
【 List 01 】 のdate("Y/m/d l H:i:s") は、date("Y/m/d l H:i:s",time()) と同じで、省略形を書きました。
(3) //GMTとの時差9時間を足す:PHPのコメントなので、入力は不要です。
他人に分かりやすいし、後日、自分自身が見直したときにも分かりやすいので、なるべく書きましょう。
// から行の終わりまでがコメントになります。
ここで、GMT というのは、「グリニッジ標準時」のことです。海外で事件が起こって、それがニュースになるとき、
「日本時間の・・・」とか「現地時間の・・・」とか、アナウンサーの方が話されています。
日常会話では「グリニッジ標準時」は使いませんネ。
GMT は "Greenwich Mean Time" 略で、イギリスのロンドンにあるグリニッジ天文台での時刻です。
+ 9*3600 という計算をしているのは、「グリニッジ標準時」に9時間足すと、「日本時間」になります。
プログラミングでは、「グリニッジ標準時」が時々出てきます。PHP 特有のことではありません。慣れて下さい。
(4) gmdate():関数・・・【 List 01 】 の date() と同様に、日時を「フォーマット」して返します。
gmdate() 関数はグリニッジ標準時で結果を返しますので、あらかじめ9時間を足していますから、
結果として、「日本時間」で返してくれることになります。
PHPプログラミングって、こんな感じです。
あらかじめ用意されている関数がたくさんあって、全て覚えておくのは(普通の人では)不可能です。
慣れてきたら、「きっとこんな関数があるはず!」ってことで、探して使います。(無ければ自分で作ります。)
探すのは、手元にあるPHPの参考書か、インターネットのGoogle先生(Webで検索すること)です。
もう少し連載を読み続けてもらえたら、そのときに簡単そうな参考書を購入して、一冊読み切るのが良いと思います。
そうすれば、足りない知識はGoogle先生と、プログラミングをして行く努力とで補ってゆけると思います。
(もし補えなかったら、読書が足りなかったか、検索が下手か、努力が足りないか・・・
もしかすると、この連載が悪かったか・・・でしょう。)
知識の他には、パスルを解くときのような、考える力が必要です。まだ連載が始まったばかりなのですが、
プログラミングって、NHKのピタゴラスイッチみたいなものだと・・・思いませんか?
なお、PHPプログラミングでは、「メモ帳」では支障があります。
「サクラエディタ」か、「PHPエディタ」が欲しいところです。
下記の二つは、フリーウェアといって、無料のソフトウェアです。
(この調査は、2011/10/20時点の調査です。この連載講座を読まれるタイミングによっては異なってきます。)
(1) サクラエディタ
HTML, CSSなどにも対応している、軽快なエディタです。
マウスの右クリックのプルダウンメニューに、エディタの起動を割り付けることも簡単に出来るので、
私自身はこちらを使っています。
(2) PHPエディタ
PHPに特化しており、開発者にも使われている高機能エディタです。
私の周囲には、こちらを使っている人が多いように感じます。
下記の二週類がありますが、(B) スタンドアロン版で十分だと思います。
(A) プロジェクト管理機能のついたPHP統合開発環境版
(B) プロジェクト管理機能のないスタンドアロン版
本日はここまでで終わります。次回第5回は、画像を表示する予定です。
< 連載講座:『PHP入門』 ・・・ 前へ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 次へ >
次回のオープンキャンパスは、
10月22日(土) 『PHPでプログラミング PHPで動的Webアプリを作ります。』 です。
良かったら参加してみて下さい。
参加してみようと思われた場合、次回のKBCオープンキャンパスから、予約を申し込んで下さい。
もちろんメールやお電話でも結構です。
学校法人河原学園 河原電子ビジネス専門学校
〒790-0014 松山市柳井町3丁目3-31
TEL: 089-931-8555 FAX:089-931-8659
e-mail:hello@kawahara.ac.jp