# 定義済み定数

以下の定数は、PHP コアに含まれており、常に利用可能です。

定義済の phpcredits() 定数
定数 | 値 | 説明
--- | --- | ---
`CREDITS_GROUP` | 1 | コア開発者のリスト
`CREDITS_GENERAL` | 2 | 一般的なクレジット: 言語設計とコンセプト、PHP と PHP SAPIモジュールの作者。
`CREDITS_SAPI` | 4 | PHPのサーバーAPIモジュールとその作者の一覧。
`CREDITS_MODULES` | 8 | PHPの拡張モジュールとその作者の一覧。
`CREDITS_DOCS` | 16 | ドキュメント作成チームのクレジット
`CREDITS_FULLPAGE` | 32 | 通常、他のフラグと組み合わせて使用されます。 他のフラグで示される情報を含む完全に独立したHTMLページを出力する ことを指定します。
`CREDITS_QA` | 64 | 品質管理チームのクレジット
`CREDITS_ALL` | -1 | 全てのクレジット、CREDITS_DOCS + CREDITS_GENERAL + CREDITS_GROUP + CREDITS_MODULES + CREDITS_FULLPAGE を指定した場合と同じ。 この定数は、適当なタグを有する完全にスタンドアローンのHTMLページ を生成します。

phpinfo() の定数
定数 | 値 | 説明
--- | --- | ---
`INFO_GENERAL` | 1 | configureオプション、php.ini の場所、構築日、Webサーバー、システム等。
`INFO_CREDITS` | 2 | PHP クレジット。phpcredits()も参照してください。
`INFO_CONFIGURATION` | 4 | PHPディレクティブの現在のローカルおよびマスター値。 ini_get()も参照してください。
`INFO_MODULES` | 8 | ロードされているモジュールとそれぞれの設定。
`INFO_ENVIRONMENT` | 16 | 環境変数に関する情報で、$_ENVでも入手可能です。
`INFO_VARIABLES` | 32 | EGPCS (Environment, GET, POST, Cookie, Server)から定義済の変数を表示します。
`INFO_LICENSE` | 64 | PHPライセンス情報。» license faqも参照してください。
`INFO_ALL` | -1 | 上記を全て表示します。これがデフォルト値です。

INI 定数
定数 | 値 | 説明
--- | --- | ---
INI_USER | 1 | 未使用
INI_PERDIR | 2 | 未使用
INI_SYSTEM | 4 | 未使用
INI_ALL | 7 | 未使用

Assert 定数。これらの値を使用して、 assert_options() のオプションを設定します。

assert() 定数
定数 | INI 設定 | 説明
--- | --- | ---
`ASSERT_ACTIVE` | assert.active | assert() の評価を有効にします。
`ASSERT_CALLBACK` | assert.callback | アサーションに失敗した場合に実行するコールバック。
`ASSERT_BAIL` | assert.bail | アサーションに失敗した時点に実行を中断します。
`ASSERT_WARNING` | assert.warning | アサーションに失敗するたびに PHP の警告を発行します。
`ASSERT_QUIET_EVAL` | assert.quiet_eval | アサーション式の評価中は error_reporting を無効にします。

次の定数は、ホスト OS が Windows の場合にのみ使用可能なものです。 バージョン情報を知ることができるので、さまざまな機能を使う際に役立ちます。 これらの定数は PHP 5.3.0 以降で使用可能です。

Windows 固有の定数
定数 | 説明
--- | ---
`PHP_WINDOWS_VERSION_MAJOR` | Windows のメジャーバージョン。4 (NT4/Me/98/95)、 5 (XP/2003 R2/2003/2000) あるいは 6 (Vista/2008/7/8/8.1) となります。
`PHP_WINDOWS_VERSION_MINOR` | Windows のマイナーバージョン。0 (Vista/2008/2000/NT4/95)、 1 (XP)、2 (2003 R2/2003/XP x64)、10 (98) あるいは 90 (ME) となります。
`PHP_WINDOWS_VERSION_BUILD` | Windows のビルド番号 (たとえば Windows Vista SP1 はビルド 6001 となります)。
`PHP_WINDOWS_VERSION_PLATFORM` | PHP が現在動作しているプラットフォーム。この値は Windows Vista/XP/2000/NT4, Server 2008/2003 では 2、 Windows ME/98/95 では 1 となります。
`PHP_WINDOWS_VERSION_SP_MAJOR` | インストールされているサービスパックのメジャーバージョン。サービスパックがインストールされていない場合は 0 となります。たとえば Windows XP にサービスパック 3 をインストールした場合、この値は 3 となります。
`PHP_WINDOWS_VERSION_SP_MINOR` | インストールされているサービスパックのマイナーバージョン。サービスパックがインストールされていない場合は 0 となります。
`PHP_WINDOWS_VERSION_SUITEMASK` | Windows のさまざまな機能がインストールされているかどうかを示すビットマスク。 各フィールドの意味については以下の表を参照ください。
`PHP_WINDOWS_VERSION_PRODUCTTYPE` | PHP_WINDOWS_NT_* 定数を決定するために使用する値を含みます。 この値は PHP_WINDOWS_NT_* 定数のいずれかとなり、 プラットフォームの形式を示します。
`PHP_WINDOWS_NT_DOMAIN_CONTROLLER` | これはドメインコントローラです。
`PHP_WINDOWS_NT_SERVER` | これはサーバーシステム (Server 2008/2003/2000 など) です。もしドメインコントローラである場合は `PHP_WINDOWS_NT_DOMAIN_CONTROLLER` と報告されることに注意しましょう。
`PHP_WINDOWS_NT_WORKSTATION` | これはワークステーションシステム (Vista/XP/2000/NT4 など) です。

この表は、`PHP_WINDOWS_VERSION_SUITEMASK` のビットマスクを使用して確認できる機能の一覧を示すものです。

Windows suitemask ビットフィールド
ビット | 説明
--- | ---
0x00000004 | Microsoft BackOffice コンポーネントがインストールされています。
0x00000400 | Windows Server 2003, Web Edition がインストールされています。
0x00004000 | Windows Server 2003, Compute Cluster Edition がインストールされています。
0x00000080 | Windows Server 2008 Datacenter, Windows Server 2003, Datacenter Edition あるいは Windows 2000 Datacenter Server がインストールされています。
0x00000002 | Windows Server 2008 Enterprise, Windows Server 2003, Enterprise Edition, Windows 2000 Advanced Server あるいは Windows NT Server 4.0 Enterprise Edition がインストールされています。
0x00000040 | Windows XP Embedded がインストールされています。
0x00000200 | Windows Vista Home Premium, Windows Vista Home Basic あるいは Windows XP Home Edition がインストールされています。
0x00000100 | リモートデスクトップに対応していますが、 ひとつのインタラクティブセッションしかサポートしていません。 この値は、システムがアプリケーションサーバーモードで実行中でない場合に設定されます。
0x00000001 | Microsoft Small Business Server がかつてインストールされていましたが、 Windows の別のバージョンにアップグレードされました。
0x00000020 | Microsoft Small Business Server が、制限クライアントライセンスでインストールされています。
0x00002000 | Windows Storage Server 2003 R2 あるいは Windows Storage Server 2003 がインストールされています。
0x00000010 | ターミナルサービスがインストールされています。 この値は常に設定されています。もしこの値が設定されているのに 0x00000100 が設定されていなければ、 そのシステムはアプリケーションサーバーモードで動作しています。
0x00008000 | Windows Home Server がインストールされています。