PHP Guid

  1. このページは HTML 及び多少のプログラム経験がある方が対象です。
    初心者の方は JavaScript または Perl などから始めて下さい。

  2. ネットワークゲームにも色々ありますが、不特定多数の人が簡単に参加できるゲームとしては HTTP プロトコルを利用したブラウザゲームが最適で、最近では携帯電話などからも簡単に参加できるゲームが人気になっています。
    PHP は Web ページの記述に特化したスクリプト言語です。

  3. スクリプト言語とは事前に翻訳しないで実行時に命令を解析しながら実行するプログラム言語です。
    スクリプトには、クライアントサイドスクリプト(CSL)とサーバーサイドスクリプト(SSL)があります。
    クライアントサイドスクリプトとはクライアントのコンピュータ上で動作するもので JavaScript がその代表で、マウスやキーボードの操作などクライアントサイドの処理を担当します。
    サーバーサイドスクリプト(SSL)はサーバー上で動作するもので Perl や PHP が有名です。
    複数のユーザーが情報を交換しながらプレイするゲームなどは、サーバー上で動作する SSL が活躍します。
    PHP は JavaScript ほどの派手さはありませんが、クライアントサイドでは対応できない処理を担当します。
    例えば、サーバーを介して peer to peer で接続したり、複数のクライアントが同時に参加するゲームなどでは、欠くことができません。
    PHP はデータベース(MySQL)とも相性が良く、ネットワークゲームにも適しています。

  4. CSL が動作するか否かはクライアント側(パソコン側)の問題です。
    これに対して SSL が動作するか否かは、サーバーにその機能が備わっているか否かによります。
    最近ではセキュリティの関係からサーバー上で動作するプログラムは敬遠されるようです。
    幸いにして PHP が使えるサーバーを利用できることになり、PHP のページを復活することにします。

  5. CGI(Common Gateway Interface) はホームページの標準的なインターフェースです。
    決められた呼び出し形式によりプログラムを実行して HTML(HyperText Markup Language)文を文字列として吐き出します。
    ブラウザは、この出力文字列(HTML文)を受け取ってホームページ上に表示します。
    CSL も SSL も HTML 文を文字列として吐き出します。
    従って JavaScript や PHP のプログラムを作成するには HTML の文法に精通していることが必須です。
    html タグは大文字でも小文字でもOKですが、XHTML(エックスエイチティーエムエル)の影響か小文字が使われる例が増えてきています。

  6. 例えば大きな文字で「HTML & PHP」と表示する HTML のタグは次のように次のように書きます。
    <h1>HTML & PHP</h1>
    PHP では次のように書きます。
    print "<h1>HTML & PHP</h1>";
    つまりブラウザが実行する html のプログラムを PHP の print 文で吐き出します。
    プログラムを出力するプログラムをメタプログラムと言いますが、この機能により柔軟性に富んだゲームプログラムなどの作成が可能になります。
    ブラウザゲームと普通のゲームとで最も異なる点は、通信を伴うことです。
    特に人と人が対戦するゲームでは、お互いにプレイを確認しながらゲームを進めなければなりません。

  7. プログラム的には変数の値に付いて特別の配慮が必要です。
    普通のゲームでは設定された変数の値はゲームが終了するまで保持されますが、ブラウザゲームではページが更新される度に値が初期化されます。
    従ってセマンティック(ゲーム状態の連続性)を確保する必要があります。

前田稔の超初心者のプログラム入門
PHP Program