built-in Server

ビルトインサーバーのテストです。

PHP をインストール

  1. PHP を動かすには PHP をサポートしているサーバーにアップロードするか、パソコンに WWW サーバー(apache など)を構築しなければなりません。
    サーバーを構築するのは一筋縄では出来ませんし、デバッグの度にサーバーにアップロードするのも大変な手間がかかります。
    そこで PHP 5.4.0 からリリースされたローカル環境で PHP をテストできるビルトインサーバー機能を使ってみます。
    サーバー上で動かすときは PHP をインストールする必要は無いのですが、ビルトインサーバーを使うときは C:\BIN\php\ に PHP をインストールして下さい。
    ビルトインサーバーで実行するとPHP の文法エラーを指摘してくれるので助かります。
    PHP のインストールは PHP Install を参照して下さい。
  2. ビルトインサーバーのテストの準備をします。
    c:\bin\php\ に PHP がインストールされているものとします。
    C:\BIN\PHP\ に次のファイルを格納して下さい。
    ファイル名 説明
    index.html ビルトインサーバーで起動される最初のファイル
    hello.php "Hello PHP 漢字テスト(utf-8 BOM 有り)" を表示するファイル
    view.php utf-8 BOM 有りでタイプした "php.gif" を描画する PHP ファイル
    hello2.php "文字コードは「utf-8 の BOM 無し」で書かれています" を表示するファイル
    hello_jis.php "文字コードは「Shift_JIS」で書かれています" を表示するファイル
    php.gif インストールすると格納される画像ファイル
  3. C:\BIN\PHP\ に格納するファイルのソースコードです。
  4. ビルトインサーバー機能を立ち上げます。
    1. コマンドプロンプトを起動します。
      コマンドプロンプトのタイプは大文字でも小文字でも構いません。
    2. c:\bin\php\ に移動します。
      C:\Users\maeda>cd c:\bin\php
      
    3. ビルトインサーバーを起動します。
      -S の「S」は大文字です。
      localhost:8000 は、localhost(127.0.0.1)のポート8000 を PHP ビルトインサーバーが使用する設定です。
      c:\bin\php>php -S localhost:8000
      
    4. ブラウザ(IE など)を起動して「http://localhost:8000」を貼り付けると規定値で index.html が実行されます。
      また「http://localhost:8000/hello.php」を貼り付けると hello.php が実行されます。
  5. index.html のテストをします。
    呼び出されるファイル ID 説明
    hello.php Hello PHP(utf-8 BOM 有り) 「漢字テスト(utf-8 BOM 有り)」が印字される
    view.php Image View "php.gif" の画像が描画される
    hello2.php Hello PHP(utf-8 BOM 無し) 「utf-8 の BOM 無し」が印字される
    hello_jis.phpHello PHP Shift_JIS Shift_JIS のページは文字化けします
    Hello PHP Shift_JIS をクリックすると文字化けします。

  6. ビルトインサーバーの終了は、コマンドプロンプトのウインドウで CTRL-c を押します。
    c:\bin\php>exit でコマンドプロンプトを終了します。

【NOTE】

  1. ビルトインサーバーで文字化けを起こした "hello_jis.php" をサーバーにアップロードして起動してみます。

  2. 2020/05/20 サーバーに "hello_jis.php" をアップロードすると Shift_JIS でタイプした PHP が正常に実行されました。
    BOM が設定されていないファイルは Shift-JIS と認識されるようです。
    このリンクをクリックすると hello_jis.php をサーバー上で実行します。
  3. サーバーでは Shift-JIS も使えるようなのですが、私はサーバーにアップロードするファイルの文字コードを utf-8(BOM 有り)に統一することにしました。
    Windows10 では「アクセサリ/メモ帳」を起動してソースファイルをタイプするのが良いかと思います。
    メモ帳でタイプしたファイルの規定値は utf-8(BOM 無し)ですが、ビルトインサーバーでは問題無く使用出来ると思います。

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