web関連:PHPリファレンス
web関連に属するゴルフ用語を紹介しています。
SoapClient()
SoapClientはSoapClientオブジェクトを生成します。WSDLを指定する場合はWSDファイルのURLまたはNULLに指定します。非WSDLモードで生成する場合は、WSDファイルにNULLを指定し、作成オプションにリクエストを行うURL(location)やSOAPサービスの名前空間(uri)などのオプションを指定します。
base64_decode()
base64_decode関数はbase64方式によってエンコードされた文字列をデコードします。
base64_encode()
base64_encode関数は指定された文字列をbase64方式でエンコードします。
flush()
flush関数は出力バッファの内容を出力します。これにより、それまでの全ての出力がユーザーのブラウザに対して効率的に出力されます。
header()
header関数は任意のHTTPヘッダを送信します。HTMLファイルタグやPHPスクリプトによる出力よりも前に記述する必要があり、HTMLファイル中に記述した場合にはエラーとなりますので注意が必要です。
ignore_user_abort()
ignore_user_abort関数はクライアント接続が断たれたときに処理を中断するかどうかの設定を行います。クライアントによる中断を無視、か、タイムアウトを無視、を指定すると、クライアントによって処理が中断された場合や、処理がタイムアウトしてしまった場合でも中断せずに処理を継続させることが可能です。
mail()
mail関数はメールを送信します。PHP.iniにメール送信時に使用する設定が記述されている必要があります。
ob_end_flush()
ob_end_flush関数は出力バッファの内容を出力してから出力バッファを無効にします。ob_end_clean関数はバッファの内容を出力せずにクリアしますが、ob_end_flush関数は出力した後でバッファを無効にする点で異なります。
長時間かかる処理中に、ブラウザに何も表示されていないと不安に感じることもあります。そこで、バッファを一度出力させてバッファを無効にし、「しばらくお待ちください...」等のメッセージを表示する際に使うことも可能です。
ob_get_contents()
ob_get_contents関数は出力バッファの内容を取得します。ob_end_clean関数などでバッファをクリアした後、バッファの内容を処理で使用したい場合にこの関数でバッファの内容を取得しておきます。
ob_get_length()
ob_get_length関数は出力バッファのサイズ(長さ)を取得します。
ob_start()
ob_start関数は出力バッファを有効にします。出力バッファを有効にすることで、処理内容をまとめて出力することが可能です。
バッファのデータを出力する際に、データを処理する関数が指定可能です。この用途として、マルチバイト文字を考慮して出力データを指定したHTTP出力文字コードに変換する場合「mb_output_handler」を指定したり、出力データを圧縮する場合に「ob_gzhandler」を指定するなどがあります。
parse_url()
parse_url関数は指定されたURLを解析して個々の構成要素に分割します。「scheme」「host」「path」などの構成要素をインデックスとする連想配列が返されます。この関数は、指定されたURLが有効かどうかを調べるためのものではなく、単純にURLを分解するだけのものです。
rawurldecode()
rawurldecode関数はURLエンコードされた文字列をデコードします。
rawurlencode()
rawurlencode関数は指定された文字列をURLエンコードします。アルファベットと「-」、「_」、「.」以外の文字が「%」に続く16進表記へ置き換えられます。
session_destroy()
session_destroy関数はセッションへ登録された全てのデータを破棄します。
session_id()
session_id関数はセッションIDを取得します。パラメータを指定しない場合は現在のセッションのセッションIDを取得します。パラメータにセッションIDが指定された場合はセッションIDを指定値へ置き換えます。セッションIDを置き換える場合はsession_start関数実行前に実行される必要があります。
既定の設定では、セッションデータは「sess_」+「セッションID」という名前のファイルに保存されます。
例)「sess_a2havf04us5p8o030no4j29h0」
この場合、セッションIDを明示的に指定するときに使用できる文字は半角の英数字とハイフンに限定されます。
session_is_registered()
session_is_registered関数は、指定された名前のセッションデータが既存するかどうかを調べるときに使用します。既存する場合はTRUEが返されます。この関数は、$_SESSIONに格納されたセッションデータの存在確認のための使用はできません。$_SESSIONに格納したセッションデータの存在確認にはisset関数を使用します。
session_name()
session_name関数はセッション名の設定を行います。セッション名はクッキーやURLにセッションIDを格納する場合に使用されます。
例えば、URLにセッションIDが含まれる場合「test.php?=PHPSESSID=esman4skr0as6khvm7」のようなURLの一部を構成するため、このセッション名の既定値はPHP.iniのsession.nameに「PHPSESSID」と設定されています。
session_register()
session_register関数は、指定された1つ以上の変数をセッションデータとして登録します。PHP4,1,0以降では、session_register関数を使用せずに$_SESSIONの使用が推奨されています。また、register_globalsがOFFに設定されている場合は、この関数によるセッションデータの登録は機能しません。PHP4,2,0以降はデフォルトでregister_globalsがOFFに設定されており、この関数を使用せずに$_SESSIONでセッションデータを作成する方が無難といえます。
session_start()
session_start関数はセッションを開始します。PHP,iniのsession.auto_startが1の場合(既定値:0)はセッションが自動開始されますが、そうでない場合は明示的にセッションを開始する必要があります。
セッション名や保存先ディレクトリ、セッションID等を設定する場合はsession_start関数でセッションを開始する前に設定しておく必要があります。
session_unregister()
session_unregister関数は、指定された変数をセッションデータから削除します。この関数は$_SESSIONに格納されたセッションデータの削除は行いません。
session_write_close()
session_write_close関数はセッションデータを書き込んでセッションを終了します。この関数を実行しなくとも通常はスクリプト終了時にセッションデータは書き込まれます。ただし、セッションデータの書き込み時は同時書き込みを回避するためのロックが行われるので、場合によってはパフォーマンスの低下を招くことも考えられるため、スクリプトの終了時に書き込み処理を行うのではなく、セッションデータの取り扱いが終了した時点でsession_write_close関数を実行し、データを即書き込むという手法をとることが可能です。
setcookie()
setcookie関数はクッキーを送信します。名前と値に加え、有効期限やパス、ドメインを指定できます。SSL通信時のみにクッキーを送信するかどうかを指定するには6番目のパラメータに「1」をセットします。送信されたクッキーの値はURLエンコードされ、受信時にデコードされます。エンコードせずにクッキーを送信したい場合はsetrawcookie関数を使用します。setrawcookie関数はPHP5で追加されました。
送信したクッキーは次回のページ表示時から$_COOKIEや$HTTP_COOKIE_VARSを使用してアクセスが可能です。例えば、「test」という名前のクッキーを参照するには「$_COOKIE["test"]」を参照します。
クッキーの有効とする期限はタイムスタンプで指定します。time関数を使用して現時の時刻を基準に「time()+600」(現在の600秒後)のように指定する方法がよく使用されます。省略したり、過去の時刻をセットするとブラウザを閉じる際にクッキーは削除されるため、クッキーを削除する場合は値に「""」をセットし、有効期限に過去の時刻をセットします。
urldecode()
urldecode関数はエンコードされたURL文字列をデコードします。
urlencode()
urlencode関数はURL文字列をエンコードします。同じようにエンコードするrawurlencode関数とは、rawurlencode関数がスペースを「%20」に置き換えるのに対し、urlencode関数は「+」に置き換える点で異なりますl。