PHP:HyperTextProsessor

  1. PHP入門


    1. PHPとは

       PHPは動的なwebページを生成できる言語です。ファイルやデータベースに蓄積されたデータをもとに、web ページを動的に生成することができます。言語の体系は C言語 と親和性が高く、C言語を学んだ人には、使いやすい言葉になっています。

    2. Apacheのインストール

       PHP は web サーバーから処理を依頼され、結果をHTML記述で返します。したがって、PHPと連携可能な web サーバーが必要です。Windows の環境で PHP を実行するには、Windows 用の web サーバーである Apach を利用するのが簡便です。まず、Apache をダウンロードして組み込みます。Apache を組み込むと、htdocs フォルダが生成されます。apache はこの中で指定された ファイルさがしブラウザに返します。指定がない場合、index.html を返します。
       Apacheを組み込むと Windowsのサービスとして組み込まれ自動起動します。タスクバーに が羽のアイコンが現れここから、停止できます。自動起動を停止するには、windows のコントロールパネルから、「管理ツール」>「サービス」を選択し、Apache の「自動」を「手動」に変更します。

      起動するには、スタートメニューから Apacheをstartします。
       webブラウザは http://localhost/ のURLで同じPC内部の apache サーバーと接続します。Apache を起動しブラウザでhttp://localhost/ をアクセスすると、/htdocs/index.html が表示されます。Apache はポート80を利用します。Skype(ネット電話)などが常駐していると、ケンカをしますから注意してください。

    3. PHPのインストールとApacheとの連携

       次に、PHPをダウンロードし、インストーラーで組み込みます。現在はPHP5になっていますが、webなどの記事はPHP4のものが少なくありません。インストール時に連携する web サーバーを指定します。インストール後、Apache のhttpd.conf を編集し、
       ScriptAilias /php/ <インストールしたphpのフォルダ>
       AddType application/x-httpd-php .php
        AddType application/x-httpd-php-source .phps
      を追加します。
      これで、ApacheとPHPの連携が可能になります。
       PHPの機能は、php.ini で設定します。漢字(マルティバイト文字)、メール、SQL、などを利用するには、設定が必要です。

    4. XAMPP

       XAMPPは Apache、PHP,Perl、SQLサーバーを同時に組み込み、基本的な連携を取ってくれます。クリーンインストール(これまで、これらの組み込みをしていない)なら問題はなさそうですが、過去の組み込み履歴が残っている場合、正常に組み込めない場合があります。
       XAMPPを組み込むと、XAMPPコントローラが組み込まれ、ApacheやSQLなどの起動を制御できます。

  2. PHP入門


    1. HTMLへPHPを組み込む

       PHP は HTML に PHP を組み込む形で記述が可能です。まず、組み込み例を紹介します。以下のプログラムを htdocs フォルダに配置します。
       サーバーは <?php ...  ?> の部分の処理を PHP に依頼します。PHP では、print で指定された文字(HTML)をサーバーに返し、サーバーはこれをブラウザに渡します。

      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      <HTML>
      <HEAD>
      <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
      <META http-equiv="Content-Style-Type" content="text/css">
      <TITLE></TITLE>
      </HEAD>
      <BODY>
      <?php
        print "<B>PHPの世界へようこそ!</B>";
        print "<BR>";
      ?>
      </BODY>
      </HTML>

       ブラウザは、結果として以下のHTMLを受け取り表示します。
      <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
      <HTML>
      <HEAD>
      <META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
      <META http-equiv="Content-Style-Type" content="text/css">
      <TITLE></TITLE>
      </HEAD>
      <BODY>
      <B>PHPの世界へようこそ!</B><BR></BODY>
      </HTML>

      これだけでは意味がありませんが、PHP の print 出力で、HTML のページが作成できることで。動的な(プログラムによって生成される)ページが表示できることになります。PHPの記述(スクリプト)は CGI の形式で処理されることになります。

    2. 変数と式

       php は一般のプログラムを同様、式や変数を利用できます。変数には先頭に $ を付加し、変数であることを明示します。以下は、簡単な計算を行い、その値を HTML として出力します。
      <?php
        print "<B>計算</B><BR>";
        $a = 23+34;
        print $a;
        print "<BR>";
      ?>

    3. 繰り返し

       繰り返しの構文は C言語と同じく for 文を利用します。以下は、変数名に $ が付記されている以外は、C言語と同じ構文で、変数sに10までの値を順に加えます。結果を、HTMLとしてページに表示できます。
      <?php
        $s=0;
        for($i=0;$i <=10;$i++){;
         $s=$s + $i;
        }
        print "10までの和: ";
        print $s."<BR>"
      ?>

       以下の例は、九九の表を生成するプログラムで PHP によるページ生成の典型例になります。
      <table border ="1">
      <?php
        for($i=1;$i < 10;$i++){
          print "<TR>";
          for($j =1; $j <10 ;$j++){
            print "<TD>";
            print $i*$j;
            print "</TD>";
          }
        print "</TR>";
        }
      ?>
      </table>

      結果として以下のような表を表示できます。めんどうな表のHTMLタグをプログラムで生成しています。最初に、<table border ="1"> で罫線付の表を定義します。変数 $ i は i 行に対応します。<TR> で行を生成し、変数 $j を用いた繰り返しで、9列の テーブル要素を生成しています。


       (余り意味はないですが)20*20 の乗算表もプログラムを少し変えるだけで生成することができます。

    4. 条件分岐

       条件付の実行記述もC言語と同様です。
       if ( <条件>  ){
         文1;文2;  
       } 
       else{ 
         文1;文2;  
       } 

       ただし、複数の条件付処理をする場合、elseif の構文が可能で、C言語より分かりやすい記述が可能です。
       if ( <条件>  ){
         文1;文2;  
       } 
       elseif( <条件>  ){ 
         文1;文2;  
       } 
        else{ 
         文1;文2;  
       }

    5. 組み込み状態

      PHPの組み込みの状態は、phpinfo() 関数を呼び出せば知ることができます。