PHP入門 ~初心者でもできるブログ作り~

このブログで使う教科書

 

私は著者本人ではありませんし、著者の方と面識もありませんので、教科書として用いる本に記載されている内容をそのまま書くようなことはしません。何ページの何行目という表現を使って説明をしていきたいと思います。

 

講義は週1回の予定で進めていきます。

 

↓を教科書として使っています。

 

タイトル: 自分で作る blog ツール

Amebaでブログを始めよう!
1 | 2 | 3 | 4 | 5 | 最初次のページへ >>

宣伝目的のコメント・トラックバックはご遠慮願います

先日より続けて同一サイトの宣伝目的のスパム的コメントが書き込まれています。


手動書き込みではなく自動で書き込みを行えるツールを利用しているのでしょうから、ここでご遠慮願いますと書いても無駄に終わりそうですが、そのような投稿を発見次第削除させていただきます。

プログラミングを始めるために用意するもの

人気ブログランキング  ← こちらのクリックもよろしくお願いしますm(_ _)m


[今回の範囲:教科書26~29p]


更新が遅くなってしまって本当に申し訳ございませんでした。



さて、今回は準備編としては最後の講義になります。すでにapacheやPHPの設定も終わり、あとはプログラムを書くだけという状態になっていると思いますが、肝心のプログラムを書くにあたって絶対に必要になってくるものが少なくとも2つあります。


マニュアルとテキストエディタの2つですね。


PHPマニュアルサイト


まずはマニュアルからです。上記リンクは日本語に翻訳されたPHPのマニュアルサイトです。多分どんなプログラマーでもマニュアルに全く目を通さない人はいません。 バグのないプログラムを制作するためにマニュアルは絶対に必要なものです。


関数やその他全てについて丸暗記する必要はありませんし、よく使うものは黙っていても覚えるものです。ですからそれ以外でちょっと知識が曖昧な箇所に遭遇した時はためらわずにマニュアルサイトで確認する癖を付けて下さい。いわば辞書のような存在ですね。



次はテキストエディタです。教科書でも勧められていますし私もお勧めしたいのが秀丸 です。


このブログの読者の方が使っているパソコンにもちょっとしたエディタ(Windowsならメモ帳)がインストールされていると思います。ただその手のエディタで扱える文字コードはSJISのみです。SJISはWindowsやMacで標準文字コードとして使われていますが、プログラムを書く場合にSJISという文字コードは非常に危険です。


そのためUnix系のOSで標準とされているEUC-JP(以下EUC)という文字コードを使って、この講義ではプログラムを書くことにしていきます。前述のメモ帳のようなエディタではEUCを扱えませんので、EUCを扱えるテキストエディタを用意する必要があるのです。


私がお勧めする秀丸は有料ですが、豊富な機能と動作面の軽さで定評のあるテキストエディタとして知られています。メモ帳に慣れてしまっている人でも秀丸の使い勝手の良さに惚れるはずですよ。



最後に今回の教科書の範囲の最後でふれられているデータベースですが、今後の講義内容では扱いません。現在よく使われているのはSQL(Search Query Language)という種類のものがほとんどです。データベースに興味のある方は各自色々調べてみても良いかもしれません。


もしかするとこの講義の続編としてSQLを扱う日が来るかもしれませんが、SQLを習得することは決して無駄にはならないと思いますし、一生懸命頑張れば基礎的なことなら1週間ほどでマスターすることも可能です。現状ではSQLというデータベースの種類があるということだけでも頭の片隅に置いておいて下さい。



以上で準備編は終了です。いよいよ次回から実践に踏み込んでいくことになります。

間が空いてしまってすみません

前回から2週間以上経過してしまい申し訳ないと反省しています。


頑張って明日は次回の内容を仕上げたいと思います。

PHPのセットアップ part.3

人気ブログランキング  ← こちらのクリックもよろしくお願いしますm(_ _)m


[今回の範囲:教科書20~25p]



今回はPHPの動作に関する設定を行います。設定のためには教科書に書かれているようにphp.iniファイルを用意する必要があります。


教科書では『エラー表示』『拡張機能(エクステンション)』『日本語処理』の3項目について主に説明されていますが、最初の2つは教科書の通りで全く問題ありません。覚えておいて損のない単語としてはphp_mbstring.dllというエクステンションDLLに含まれているmbstringという単語です。これは


multi byte string


の略称ですね。



そして最後の項目である『日本語処理』ですが、教科書に書かれている通りに設定した方が良いと思います。ただ、もし携帯向けサイトの構築を考えておられるのでしたら、mbstring.internal_encodingの行はコメントアウト(行頭に ; )しておいた方が良いかもしれません。


というのも、携帯には独特の文化というか絵文字の存在があります。この絵文字を携帯会社間で相互変換させようとすると、スクリプトはSJISで記述した方が楽かもしれないからです。


PHPではスクリプトの文字コードをSJISにすることを推奨していませんが、基本的にSJISで記述してもほとんど問題なく動作します。ただ本来推奨されているのはEUC-JPもしくはUTF-8です。SJISを使う場合は文字化けに注意する必要があるなど、若干面倒な部分がありますが、慣れと経験で対応できるようになるものばかりです。


内部コードを予め明示させておくかどうかは皆さんの判断に委ねることにしますが、本講座では教科書と同じでスクリプトの文字コードはEUC-JPということで進めていきます。


24pのmagic_quoteの設定については教科書に書かれている通りです。私の経験でも設定が On になっている場合、煩わしいと感じることがほとんどで、全くと言って良いほど On にするメリットはありません。


日本語処理にしても、このmagic_quoteにしても、文字に対する処理はプログラマ自身が行うべきで、そうでないとバグが発生した時に、デバッグ作業が余計に面倒になることがあります。



ここまでの通りphp.iniの設定を終えたら設定内容を反映させるためにApacheの再起動を行います。今後もphp.iniやhttpd.confを編集した後は必ずApacheを再起動させるようにして下さい。

次回の予定日

ちょっと風邪でダウンしていましたが、次回は26日頃に更新します。

PHPのセットアップ part.2

人気ブログランキング  ← こちらのクリックもよろしくお願いしますm(_ _)m


[今回の範囲:教科書18~19p]



今回は前回インストールしたPHPがapache上で動くようにapacheの設定ファイルを修正します。


一般的にPHPで書かれたスクリプトファイルの拡張子は.php(PHP3の場合は.php3)ですが、通常のapacheの設定ではたとえPHPをモジュール版でインストールしたとしても動かない場合がほとんどです。


そこでPHPスクリプトがapache上で正しく実行されるようC:\Apache\conf\httpd.confを編集します。今後サーバー関連の設定ファイルを編集する際に気を付けていただきたいのはWordを使わないということです。必ずテキストエディタを使うようにして下さい。


私が使っているのは秀丸 です。


httpd.confを秀丸で開いたら教科書で指定されているよう「AddModule」から始まる行が列挙されている部分に次のような記述を追加して下さい。


LoadModule php4_module c:\php\sapi\php4apache.dll

AddType application/x-httpd-php .php


次に「DirectoryIndex」から始まる行を探して行の末尾に半角スペースを入れてから index.php と記述して下さい。この意味はウェブページにアクセスする際、ファイル名を指定せずディレクトリで終わるURLの場合にここで指定したファイルを表示することになります。またここで指定したファイル名が複数存在する場合には行頭に近い方から優先されることになります。


ですからhtmlファイルとphpスクリプトではphpスクリプトの表示を優先させたい時は「DirectoryIndex」の直後に index.php と記述することになります。



httpd.confの設定変更が終わったらapacheを再起動します。ここで無事にapacheが起動したら今回の講義内容に従って設定が完了したということになります。

プロセスとは?

人気ブログランキング  ← 上位にランクされたいです。



今日は身近な例を使って昨日解説したプロセスについて触れてみたいと思います。



最近では衛星放送をご覧になられている方が増えてきていると思いますが、衛星放送を見るためにはアンテナが必要ですよね。このアンテナがPHPで言うならスクリプトになります。


さてアンテナを設置してもそのままでは映像を見ることはできませんね。映像を見るための画面(テレビ)とチューナーが必要になります。webサーバーとPHPの関係で言うとテレビがwebサーバーに当たります。最近のテレビにはチューナーが内蔵されているものもありますが、チューナー内蔵型でなければ別にチューナーを用意することになりますよね。



内蔵されているタイプはPHPのセットアップで言うならモジュール版ということになります。

外部チューナーを取り付けた場合にはこの外部チューナーがCGI版となります。



さてプロセスとはこの例で言うならコンセントの数を指します。内蔵型の場合、コンセントはテレビの1本だけで済みますが、外部チューナーを設置した場合にはテレビのコンセントと外部チューナーのコンセントの2本が必要になりますよね。つまりコンセント(プロセス)が1本で済むならモジュール版、2本になるとCGI版だと言うことができます。



専門的な話になってしまいますがPHPスクリプト(アンテナ)はそのままでは動作しません。動作させるための環境(チューナー)が必要になってきます。そのために昨日からPHPのセットアップについて解説を始めたわけです。



かえって分かりづらくしてしまったかもしれないですかねぇ・・・

PHPのセットアップ part.1

人気ブログランキング  ← こちらのクリックもよろしくお願いしますm(_ _)m


[今回の範囲:教科書16~17p]


まずこちら からPHP4.3.11のWindows用アーカイブをダウンロードして下さい。教科書では最新バージョンは4.3.10となっていますが現在の最新バージョンは4.3.11です。当ブログでは4.3.11のインストールを前提として解説していきます。


さて教科書の17pに記載されていますがPHPにはCGI版とモジュール版の2種類が存在します。プログラムを書く上で両者に違いはないのですが、教科書通りモジュール版のインストールを当ブログでも推奨します。


では本題に入りますが今回はインストール作業に移る前にCGI版とモジュール版の違いについて解説したいと思います。


Unix系サーバーではプロセスと言うのですが、CGI版とモジュール版の大きな違いは新たなプロセスを生成するかどうかという点にあります。Windowsで言うなら新しいウインドウが開かれるかどうかに似ています。


CGI版の場合はPHPスクリプトが実行される際、webサーバーが新たにPHPスクリプトの実行プロセスを生成します。この際、webサーバーとPHPスクリプトの実行プロセスは互いに関連しながらも独立した状態になっています。そしてwebサーバーから生成された実行プロセスはプログラムを実行してその結果をwebサーバーに返すことになっていて、webサーバーでは実行プロセスから受け取った結果をユーザーのブラウザで表示させるべくレスポンスを返します。


つまりCGI版はそれぞれが独立して自分の働きをするわけです。


一方モジュール版はwebサーバーにPHPスクリプトの実行機能を追加したものになります。つまり外部プロセスとして実行プロセスを生成することなくwebサーバー自体でPHPスクリプトの実行が可能となります。ですから新たにプロセスを生成することがない分、処理速度が若干ですが高速になります。


主な違いはプロセス生成の有無程度だと理解していただければ問題ないのですが、一般的なレンタルサーバーではモジュール版が主流を占めています。


大まかにPHPが実行される際の動作がどうなっているかを理解していただいて次回はインストール後の設定について解説したいと思います。

webサーバーの構築 part.3

人気ブログランキング  もよろしくお願いします。


[今回の範囲:教科書10~15p]


今回は前回説明しきれなかったインストール部分について説明していきたいと思います。まだapacheのダウンロードがお済みでない方は こちら  からダウンロードして下さい。現在の最新バージョンは1.3.33です。


ダウンロードが完了すればダウンロードしたファイルを実行すれば教科書と同じような設定画面に移行します。基本的に教科書通りに進めていけば間違いありません。


注意点としては教科書でも触れられていますがインストールディレクトリは C:\にした方が良いでしょう。今回用意するサーバーはWindows上に設置しますが、レンタルサーバーなど通常接するサーバーはFreeBSDやLinux等のようなUnix系のマシンがほとんどです。これらのOSでは半角スペースや全角文字が含まれているディレクトリ名やファイル名は使えません。


今後はファイル名やディレクトリ名では半角英数字(アンダーバーやハイフンは可)のみで命名するように癖を付けて下さい。


無事インストールが完了したらブラウザのアドレス入力欄に http://localhost/ と入力してみて下さい。これで教科書に出ている写真のようなページが表示されたらインストール成功となります。


もし何も表示されない場合は


・apacheが起動しているかをチェック

http://127.0.0.1/ でアクセスしてみる


これらで動作チェックを行うと良いでしょう。実際には localhost も 127.0.0.1 もループバックアドレス と言ってマシン自身を示しています。ループバックアドレスはマシン自身を指し示しているためネームサーバーに頼ることなくアクセスすることが可能です。



インストール作業はこの連休中にできる方が多いと思いますので、ぜひこのブログと教科書を参考にして作業してみて下さい。


次回はPHPのインストールについて説明していきたいと思います。

次回の予定日

明日の夕方頃になります。それまでに仕上げておきます。
1 | 2 | 3 | 4 | 5 | 最初次のページへ >>