スラスラわかるPHP
「http://example.com/」というURLの場合、HTTPというプロトコルでexample.comという場所に行くということを示しています。
HTTPプロトコルはSSLという暗号化方式を使って安全にHTTP通信するためのプロトコルです。
クライアントはexample.comというブログにアクセスする際、まずDNSサーバにIPアドレスをたずねます。
これが名前解決という作業です。
そこで得たIPアドレスをもとにサーバにリクエストを送ります。
コンピュータで利用される文字は内部的には番号で管理されています。この対応関係を文字コードといいます。例えばASCⅡコードという文字コードで「A」という文字には内部的に「65」という番号が割り当てられています。コンピュータは割り当てられたコードを解釈し、65だからAと表示するという処理を行います。
ASCⅡコードは128文字程度しか表すことができないため、日本語のようにたくさんの文字が必要な表現では不便です。
そこで日本語に対応したいくつかの文字コードが開発されました。現在、日本語の文字コードとしてよく使われているのはUTF-8という文字コードです。
他にShift_JISやEUC-JPといった文字コードも存在します。
リクエストを受け取っているのはWebサーバと呼ばれる機能です。
URLが「.html」で終わっているHTMLファイルがリクエストされたときには数あるファイルの中から該当するHTMLファイルを取り出してレスポンスとし、クライアントに送ります。こういった、そのまま送ればよいHTMLのことを静的Webページといいます。
URLが「.php」で終わっている場合はそのままレスポンスとして返すことはできません。
そのため、Webサーバは該当のPHPプログラムファイルを取り出した後、PHP実行エンジンと呼ばれる機能にファイルを渡します。
PHP実行エンジンはファイルに書かれたプログラムを解釈して処理を行い、HTMLを作成してレスポンスとして送信します。
このように処理を経てレスポンスとして送られるWebページのことを動的Webページといいます。
動的Webページはブラウザに表示された結果のみ見れば静的Webページと変わりませんが、PHP実行エンジンの処理結果のページです。
Webサーバがインターネット上にあるとき、このサーバをリモートホストと呼びます。
自分のパソコンの中だけで構築した開発環境のことをローカル開発環境といい、サーバのことはローカルホストと呼びます。
ソフトウェアのインストール
XAMPPというソフトを使ってWebサーバであるApache HTTP Server、プログラム実行エンジンであるPHP、データベースのMariaDBを一度にインストールします。
コントロールパネルから「Apache」と「MySQL」の横にある「Start」ボタンをクリックします。正常に起動すると、「Apache」と「MySQL」の文字の背景が緑色に変化します。
公開フォルダ
XAMPPコントロールパネルの「Explorer」ボタンをクリックするとXAMPPをインストールしたフォルダが表示されます。
その中に「htdocs」というフォルダがあります。
これは公開フォルダといい、プログラムやWebページを置く場所になります。
公開フォルダ直下に置いたファイルは
http://localhost/ファイル名
でアクセスできます。公開フォルダいかにフォルダを作成し、そこにファイルを置いた場合は
http://localhost/フォルダ名/ファイル名
コマンドプロンプト上でDBの中身を確認する時など、DB操作コマンドを入力した結果が文字化けして読めない場合があります。
SET character_set_client = cp932;
SET character_set_connection = cp932;
SET character_set_results = cp932;
日本語で入力したSQL分が内部でUTF-8に変換されて処理され、結果が日本語で表示されます。
Maria DB接続確認
XAMPPコントロールパネルの[Shell]ボタンをクリックするとコマンドプロンプトが表示されます。
初回は管理権限のあるrootという特別なユーザのパスワードを決めます。
# mysqladmin -u root password
MariaDBに接続します。
# mysql -u root -p
mysqlがMariaDBに接続するためのコマンドです。-uはユーザを指定するオプションで、今回はrootを指定しています。-pはパスワード入力を行うオプションです。
quit
フォルダ作成
公開フォルダ(C:\xampp\htdocs)にtestというフォルダを作成します。
PHPはUTF-8という文字コードで書きます。
HTMLとPHPを交ぜ書きできるのがPHPの大きな特徴です。
エラー表示
ローカルホストで開発中、エラーが表示されなくて不便な場合はプログラムの先頭に次のように書きます。
<?php
ini_set('display_errors','On');
error_reporting(E_ALL);
ini_setはPHPの設定を変更するための機能でエラー表示をONにしています。error_reportingはかっこ内に指定されたレベルのエラーを出力するよう設定をする命令で、E_ALLはすべてのエラーを表すものです。
文字列と変数は.(ドット)でつなぐことができます
<br>はHTMLで改行を示すタグです。
タイムスタンプとは1970年1月1日から指定日時までの通算秒数を表す数字です。
time関数は現在のタイムスタンプを取得する関数です。
else if
elseif構文はif構文の式に当てはまらなかったときに再度条件を評価するために使います。