さて、ようやくプログラムを書くまでになりました!!まずは書いちゃいましょう。ありがちな文字の出力ですが我慢してください^^;(基本は大事だ!!(だれだ・・・ )
まずは作業用のフォルダを作成しましょう。「C:\Program Files\Apache Group\Apache2\htdocs」に「lesson1」というフォルダを作成してください。
■サンプルプログラム
テキストエディタに以下のように書き込んで、「lesson1」フォルダの中に「sample01.php」として保存しましょう。
<html>
<head>
<title>Sample01</title>
</head>
<body>
<?php
print "こんにちはご主人様 by PHP";
?>
</body>
</html>
できましたら、ブラウザのアドレスに
「http://localhost/lesson1/sample01.php」にアクセス!
ロリポップ!
さくらのレンタルサーバ
などのレンタルサーバー使ってる方はlocalhostのところはドメイン名になります。
(簡単に安くネットショップを開きたい方はこちら!)
さて、如何でしょうか?ちゃんと表示されましたでしょうか?
■解説(の前に)
さてさて、解説なんですが・・・。その前にまたちょっとめんどくさい?イヤイヤそういうことを言っちゃいけないですね^^; プログラムを書いた時に注意して頂きたいことがあります。それは、
文字コードと改行コードです。(メモ帳では機能不十分なので高機能テキストを使いましょう)
- 文字コード
WindowsやLinux(Unix)では文字コードが違います。文字コードとは、文字をコンピュータで扱うために文字に数値を割り当てたものです。コンピュータは0と1しかわかりません。ということで、WindowsとLinux(Unix)では文字コードが違うため文字化けを起こしてしまうことがあります。
それではどんな文字コードがあるのか?WindwosではShift_JISがよく用いられます。Linux(Unix)ではEUCが用いられます。ですから、WindwosサーバであればShift_JISで構いません。Linux(Unix)サーバであればEUCに変換しなくてはなりません。管理人Dが使わせて頂いているロリポップさんはLinux(Unix)サーバですのでEUCに変換してファイルをアップロードしています。手順としては、作成している環境はWindowsですからShift_JISにして、あとからEUCに変換してアップロードするわけです。みなさんが、Linux(Unix)サーバをお使いでしたらこのようにして頂くといいと思います。プログラム自体にShift_JISをEUCに変換する自作関数を作ってもいいんですけどね・・・。いつか組み込むの絶対忘れそう・・・^^; (他にいい案あれば教えてください。メール)
さて、変換作業ですがこれまたいちいち、ひとつずつやっていたら時間がもったいないです。と、いうことで非常にナイスなソフトを提供しておられる方を発見しました。
KanjiTranslater
これさえあれば、このキツイ時代をなんとか乗り越えられます。Shift_JISからEUCへ一括変換できるのでとても重宝しております。変換してサーバにアップロードしたらShift_JISへ変換するのをお忘れなく。
- 改行コード
改行を意味する文字コードのことで、WindowsではCR+LF、UNIXではLFが使われています。この改行コードの違いによってプログラムのソースファイルは、改行コードを正確に認識できないでエラーになってしまうことが多いのです。
ということなので、Linux(Unix)サーバをお使いのかたはEUCと合わせて改行コードもLFにしてください。
さて、ちょっと長くなりましたがいよいよ解説です。
■解説
まずは、PHPのプログラムを書く場所はお約束事として「<?php この中に書きます。 ?>」書き方としては、「<?php ?>」というのを真っ先に書いてしまいます。そうすることによって閉じ忘れ(?>の)を回避することができます。ダブルクオーテーションも「""」先に書いてしまうことをおすすめします。これらの閉じ忘れのエラーによって1時間ほど悩んだこともあります^^; 「print」こいつは文字列を出力するものです。(実際には関数でありません)
「print "文字列";」と書くと「""」ダブルクオーテーションの中にいれた文字列が出力されます。きをつけて頂きたいのがprintのすぐ後ろは半角のスペースです。そして、命令の最後には「;」セミコロンがつくことを憶えておいてください。
なんでセミコロンがつくの?とか、なんでprintだと文字列が出力されるの?というのは考えるのはやめましょう!!とりあえずは、そういうもんなんだ。というように理解してください。
■エラーが出てしまう人は以下の項目をチェック
- <?php ここにプログラム; ?> の間にプログラムは書かれているか?
- 命令の最後にセミコロン→ はあるか?
- 半角スペースのところが全角になっていないか