SQLの窓 イラストAC フリー素材

2021年06月26日

2021年 前期試験問題( 3 ) : 14

PHP で WEBアプリケーションを作成する上で、ブラウザに対して HTTPを送る関数という重要な関数が存在します。
簡単に言うと、この処理は PHP がブラウザに対して行う指示と考えるといいと思います。そして、プログラムの最初で送る事になる Content-Type が重要になります。

Content-Typeは、これからブラウザに送るデータの種類を説明するもので、一般的にと呼ばれる分類方法が定義されています。これは、MDN でも説明されていますが、『文書、ファイル、またはバイト列の性質や形式を示す標準』です。

最も基本的なテキストを表す場合、Content-Type: text/plain と記述され、これを受け取るとブラウザは単純なテキストとしてデータを表示しようとします。

以下に代表的なデータの種類を列挙します
1) : ブラウザにとって最も一般的な HTML
2) : 特に種類を指定しないバイナリデータ( ダウンロードダイアログが開く事になります )
3) : 自然画像フォーマットである、拡張子が通常 .jpg のファイル
また、テキストファイルである場合、そのテキストを表現する為のキャラクタセットを指定する場合( 回答はshift_jis で記述してください )は Content-Type にを追加します 現在のWEB では、キャラクタセットは UTF-8 が標準になっています。しかし、の基本キャラクタセットは Shift_JIS なので、WEBアプリケーション開発ではキャラクタセットの存在を意識する必要があります。 あらゆる開発言語で、処理を共通化したり機能別に独立させる事が行われます。クラスを作成する場合、メソッドと呼ばれる実行単位がそれにあたりますが、PHP ではクラスを作成可能ではありますが、一般的にはと言うキーワードで、ユーザー定義関数を作成します。この記述方法は、JavaScript と同様で、関数名と引数を定義して使用するものです。 しかし、PHP の関数では他の言語と全く違う扱いをするのが変数の扱いです。他の言語では、関数の外側で定義または発生した変数は、関数内で参照可能です。しかし、PHP ではキーワードを使用してその変数名を宣言しないと参照できない事に注意して下さい( スーパーグローバル変数は常に参照可能です ) WEBアプリケーションを作成する上で、プログラマが昔から意識し続けなければならなかったのが、ブラウザのの問題です。ブラウザは利用するユーザに対してより良好なレスポンスを提供する必要があったので、ブラウザに表示されるデータは全てが最新では無く PC に保存されているものもあります。しかし、WEBアプリケーションでは動的に情報を作成する為、ユーザに表示するデータは常に最新である必要があります。 このような対処には、冒頭で紹介した関数が使用されていましたが、PHP では、ある処理を組み込む事によって比較的容易にその対応を行う事ができます。それがの処理です
session_cache_limiter('nocache');
session_start();
session_start(); は、本来というスーパーグローバル変数を利用する為の開始処理ですが、そのオプションとして session_cache_limiter('nocache'); を実行しておくと、ブラウザに対して PC に保存してはならないという指示が与えられます。

さらに、ブラウザを利用している間ユーザに対して常に保持可能なスーパーグローバル変数が利用可能になります。この変数には通常ログイン時に入力される内容より、利用ユーザを特定する事が可能になる情報を保持する為に使います。






posted by at 2021-06-26 12:06 | 講師生活 | このブログの読者になる | 更新情報をチェックする