Search
  1. apache_get_modules〔ロードされたApacheモジュールの一覧を取得する〕
  2. apache_get_version〔Apacheのバージョン番号を取得〕
  3. apache_lookup_uri〔リクエストの一部を指定したURIに対して行い、全ての情報を返す〕
  4. apache_note〔Apacheリクエスト記号(note)を取得/設定する〕
  5. apache_request_headers, getallheaders〔全てのHTTPリクエストヘッダを取得する〕

apache_get_modules
ロードされたApacheモジュールの一覧を取得する

unknown

array apache_get_modules ( void ) ※PHP4.3.2~

ロードされたApacheモジュールのリストを取得します。 成功した場合にロードされたApacheモジュールの配列、失敗した場合にFALSEを返します。

chkVersion($chkversion) は、関数が使えるか調べるユーザー定義関数です。

<?
$chked=chkVersion("4.3.2");
if($chked==1){
    $modules=apache_get_modules();
    echo "ロードされたApacheのモジュール";
    echo "<pre>"print_r($modules); echo "</pre>\n";
}else{
    echo "この関数は".$chked."ではサポートされていません。<br>\n";
}
/* 出力例
ロードされたApacheのモジュール
Array
(
    [0] => core
    [1] => mod_win32
    [2] => mpm_winnt
    [3] => http_core
    [4] => mod_so
    [5] => mod_access
    [6] => mod_actions
    [7] => mod_alias
    [8] => mod_asis
    [9] => mod_auth
    [10] => mod_autoindex
    [11] => mod_cgi
    [12] => mod_dir
    [13] => mod_env
    [14] => mod_imap
    [15] => mod_include
    [16] => mod_isapi
    [17] => mod_log_config
    [18] => mod_mime
    [19] => mod_negotiation
    [20] => mod_setenvif
    [21] => mod_userdir
    [22] => sapi_apache2
)
*/
?>

apache_get_version
Apacheのバージョン番号を取得

unknown

string apache_get_version ( void ) ※PHP4.3.2~

インストールされているApacheのバージョン番号を取得します。 成功した場合にApache のバージョン番号を返し、失敗した場合にFALSEを返します。

chkVersion($chkversion) は、関数が使えるか調べるユーザー定義関数です。

<?
$chked=chkVersion("4.3.2");
if($chked==1){
    $apachever=apache_get_version();
    echo "Apacheのバージョンは、<span class='strong'>".$apachever."</span>です。<br>\n";
}else{
    echo "この関数は".$chked."ではサポートされていません。<br>\n";
}
//出力例
//Apacheのバージョンは、Apache/2.0.54 (Win32) PHP/4.4.0です。
?>

apache_lookup_uri
リクエストの一部を指定したURIに対して行い、全ての情報を返す

unknown

object apache_lookup_uri ( string $ファイル名 )

URIにリクエストの一部を行い、指定したファイル名の全情報を取得します。 成功した場合にリクエストしたファイル(URI)に関する情報をオブジェクトとして返し、失敗した場合にFALSEを返します。

この関数は、PHPが「Apacheモジュール」としてインストールされている場合のみ使用可できます(CGI版×)。

<?
$url="index.php?var=value";
$info_ary=apache_lookup_uri($url);
if (file_exists($info->filename)) {
    echo 'ファイルが見つかりませんでした<br>\n';
}else{
    echo "<pre>"print_r($info_ary); echo "</pre>\n";
}
/* 出力例
stdClass Object
(
    [status] => 200
    [the_request] => GET test/example.php HTTP/1.1
    [method] => GET
    [mtime] => 0
    [clength] => 0
    [chunked] => 0
    [content_type] => application/x-httpd-php
    [no_cache] => 0
    [no_local_copy] => 1
    [unparsed_uri] => /test/index.php?var=value
    [uri] => /test/index.php
    [filename] => C:/Program Files/Apache Group/Apache2/htdocs/test/index.php
    [args] => var=value
    [allowed] => 0
    [sent_bodyct] => 0
    [bytes_sent] => 0
    [request_time] => 1153923679
)
*/
?>

apache_note
Apacheリクエスト記号(note)を取得/設定する

unknown

string apache_note ( string $記号の名[, string $記号の値] )

Apache専用の関数で、リクエストのnotesテーブルからApacheリクエスト記号(note)を取得したり、 逆に設定することができます。

引数が1つ(記号名のみ)の場合、現在の記号の値を返します。 引数が2つ(記号名とその値)の場合、記号の値記号の名にセットし、記号の値を返します。 失敗した場合は、FALSEを返します。

» apacheのログに好きな情報を出す方法(PHP編)

このapache_note関数を使って、Apacheログに任意の値を書き込むスクリプトが紹介されています。 会員サイトの利用履歴などに活用できそうです。

apache_request_headers, getallheaders
全てのHTTPリクエストヘッダを取得する

unknown

array apache_request_headers ( void ) ※PHP4.3.0以降
array getallheaders ( void )

全HTTPヘッダ取得に成功した場合に全HTTPヘッダーの連想配列を返し、失敗した場合にFALSEを返します。

getallheaders()関数は、apache_request_headers()関数のエイリアスです。 PHP4.3.0より前のバージョンではgetallheaders()関数を使用し、PHP4.3.0以降はapache_request_headers()関数を使用します。

この関数は、PHPが「Apacheモジュール」としてインストールされている場合のみ使用可できます(CGI版×)。

chkVersion($chkversion) は、関数が使えるか調べるユーザー定義関数です。

<?
$chked=chkVersion("4.3.0");
if($chked==1){
    $headers apache_request_headers();
    foreach ($headers as $header => $value) {
        echo "$header: $value<br>\n";
    }
}else{
    $headers getallheaders();
    foreach ($headers as $header => $value) {
        echo "$header: $value<br>\n";
    }
}
#出力例
#Host: localhost
#User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ja; rv:1.8.0.4) Gecko/20060508 Firefox/1.5.0.4
#Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
#Accept-Language: ja,en-us;q=0.7,en;q=0.3
#Accept-Encoding: gzip,deflate
#Accept-Charset: Shift_JIS,utf-8;q=0.7,*;q=0.7
#Keep-Alive: 300
#Connection: keep-alive
#Referer: http://localhost/test/index.php?t=php&p=114
?>

関連コンテンツ

Q. このサイトの情報はお役に立ちましたでしょうか?

投票する 投票結果を見る

管理人に【web拍手】を送るweb拍手(1行メッセージも送れます♪)

pagetop