まとめ
上記の 3 つの手順により、PHP を使用して 1 つのページにフォーム表示とフォーム処理機能を迅速に実装できました。
Cookie の設定
PHP は、Cookie の設定と読み取りのための強力な機能を提供します。ここでは Cookie についてあまり紹介しませんが、Web アプリケーションを設計するプロセスにおいて Cookie が重要な役割を果たす可能性があることをユーザーは認識しておく必要があります。
ユーザーは、PHP が提供する setcookie() 関数を使用して、Cookie を作成または変更できます。 setcookie() 関数には合計 6 つのパラメータが含まれており、Cookie を正確に制御できます。
setcookie() 関数を使用して Cookie を設定する最も簡単な方法は次のとおりです:
setcookie('name', 'PETER');
このように、ユーザーがサイト ページ全体にアクセスすると、PHP は $name という名前の変数を自動的に作成し、その変数に値 PETER を割り当てます。この種類の Cookie をセッション Cookie と呼びます。つまり、その有効範囲はユーザーのセッション全体です。
訪問ユーザーがサイトを離れた後も Cookie の値を有効なままにしたい場合は、setcookie() 関数の対応するパラメーターを使用して Cookie の有効期間を設定できます。ここでPHPの時刻設定について説明します。 PHP は Unix に基づいて開発されたテクノロジーであり、ユーザーは 1970 年 1 月 1 日からの現在時刻を秒単位で表現する必要があります。 Unix システム プログラミングの経験がない一般ユーザーの大多数にとって、これは非常に混乱します。ただし、心配する必要はありません。PHP は mktime() 関数という非常に単純なソリューションを提供します。ユーザーは、時、分、秒、月、日、年の順で表したい時間を mktime() 関数に入力すると、mktime() 関数は 1970 年 1 月 1 日からの秒数を返します。たとえば、2000 年まで有効な Cookie を設定したい場合は、次のメソッドを使用できます。 php
$y2k = mktime(0,0,0,1,1,2000);
setcookie('name', 'PETER', $y2k); >? >
ユーザーが既存の Cookie を更新したい場合は、元の値を直接上書きするだけです。たとえば、上記のコードに従って Cookie を設定した場合でも、次の変更を加えることができます。
< ?php
$y2k = mktime(0,0 ,0, 1,1,2000);
setcookie('name', 'JEFF', $y2k);
?ここで注意すべき点は、Cookie の値を変更しましたが、PHP の $name 変数の値は、変更されたページが読み込まれるまでは変更されないことです。ユーザーが Cookie の値を変更するときに、対応する PHP 変数の値を変更したい場合は、次のメソッドを使用できます。 php
$name = 'JEFF';
$y2k = mktime(0,0,0,1,1,2000);
setcookie('name', $name, $y2k);
? >
setcookie() 関数は、有効期間パラメーターの後に、Cookie 値を読み取ることができるページのパスとドメインを設定するためのパラメーターを提供します。セキュリティ上の理由から、デフォルトでは、Cookie を設定するページと同じディレクトリまたは下位のサブディレクトリにあるページのみが、対応する Cookie 値を読み取ることができます。ただし、必要に応じてこの設定を変更することもできます。例:
< php
setcookie('name', 'jeff', $y2k, '~/myhome', '.domain.com'); >
上記のコードにより、~/myhome ディレクトリにあり、.domain.com ドメインに属するすべてのページが Cookie 値を読み取れるように設定します。
setcookie() 関数の最後のパラメータはほとんど使用されません。このパラメータは、SSL などの安全な接続プロトコルを実行している WEB サーバーにのみ Cookie 値が返されるように指定できます。ユーザーがこのパラメータ機能を有効にしたい場合は、その値を 1 に設定するだけです。
PHP を使用した Cookie の削除も非常に簡単です。ユーザーは setcookie() 関数に削除する Cookie の名前を入力するだけで、PHP が自動的に Cookie を削除します。 setcookie('name'); >
最後に、Cookie についてもう 1 つ説明します。 HTTP プロトコルでの Cookie の仕組みを考慮すると、ユーザーはテキストが表示される前にすべての Cookie 設定が送信されることを認識する必要があります。ユーザーがコードを記述するときに最初に表示テキストを設定してから Cookie を送信すると、PHP はエラー メッセージを表示し、Cookie の設定を完了できません。例:
< ?php
setcookie('name', 'jeff');
echo "皆さんこんにちは!"; >
この Cookie の設定方法は正しいです。ただし、次のメソッドが使用される場合:
< ?php
echo "HelloEveryone!";
setcookie('name', 'jeff'); >
?>
とエラーメッセージが表示され、Cookieの設定を完了できません。
日付と時刻
PHP は、ユーザーが日付と時刻を表示および制御できるようにするさまざまな単純な関数を提供します。
ユーザーが特定の日付または時刻を特定の形式で表示したい場合は、PHP が提供する date() 関数を使用できます。 date() 関数には、日付の表示形式と、表示される日付を表すタイムスタンプを設定するために使用される 2 つのパラメーターが含まれています。タイムスタンプは 1970 年 1 月 1 日からの秒数で表す必要があります。C 言語の strftime() 関数や Perl の POSIX::strftime() 関数と同様、PHP の date() 関数には多くの書式設定オプションがありますが、ここでは説明しません。たとえば、date() 関数は次のように使用されます。
< ?php
$birthday_stamp = mktime(10,10,0,10,20,1975); date('F d, Y - g:i a',$birthday_stamp);
echo "ピーターは $birthday_formatted に生まれました。"
? 表示される結果は次のとおりです。 1975 年 10 月 10 日生まれ -- 午後 10 時 10 分
概要
PHP は、使い慣れた構文スタイルとオープン ソース コードを備えた、動的 WEB サイトを迅速に作成するための強力なツールです。ユーザーがその機能をできるだけ短時間で理解して使いこなし、その大きな可能性を解放できるようにします。この記事が読者にインスピレーションを与えることができれば幸いです。皆さんも早くPHPマスターになってほしいと思います。