defines.xml は、プロジェクト/個別アプリケーション内で使用する定数を設定します。
プロジェクト内の全アプリケーションの設定を変更する場合は、プロジェクト内の defines.xml を、
アプリケーション毎に設定を変更する場合は、個別のアプリケーション毎に defines.xml を編集します。
プロジェクトと個別アプリケーションの設定キーが同じ場合、個別アプリケーション内の設定が有効(オーバーライド)になります。
例)
- defines.xml
<define name="EXAMPLE">test</define>
- プログラム側
echo EXAMPLE; // test
また設定値に {...} を指定すると、既に定義済みの定数に置換されます。
例えば、{SYL_PROJECT_DIR} とすると、プロジェクトディレクトリに置換されます。
<?xml version="1.0" encoding="UTF-8" ?> <syl-defines xmlns="http://syl.jp/schema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://syl.jp/schema syl-defines.xsd"> <!-- データクラスのサブクラス --> <!--<define name="SYL.DATA_CLASS">App.Data</define>--> <!-- エラーハンドラクラスのサブクラス --> <define name="SYL.ERROR_HANDLER_CLASS">App.ErrorHandler</define> <!-- ルータクラスのサブクラス --> <!--<define name="SYL.ROUTER_CLASS">App.Router</define>--> <!-- リクエストクラスのサブクラス --> <!--<define name="SYL.REQUEST_CLASS">App.Request</define>--> <!-- レスポンスクラスのサブクラス --> <!--<define name="SYL.RESPONSE_CLASS">App.Response</define>--> <!-- 認証クラスのサブクラス --> <!--<define name="SYL.AUTHENTICATION_CLASS">App.Authentication</define>--> <!-- ユーザークラスのサブクラス --> <!--<define name="SYL.USER_CLASS">App.User</define>--> </syl-defines>
※ アプリケーションの defines.xml となります。
タグ名 | 親タグ名 | 属性 | 必須 | 説明 |
---|---|---|---|---|
syl-defines | - | - | - | defines.xmlのTOPレベルノード |
タグ名 | 親タグ名 | 属性 | 必須 | 説明 |
---|---|---|---|---|
define | syl-defines | - | - | コントローラ起動時に設定される定数を定義するタグ。 |
name | ○ | 定数名。重複した場合は、後の値は無視される。 | ||
(値) | - | name属性に対応した定数値を指定する。{} で囲まれた値は、定数で置換される。例えば、{SYL_PROJECT_DIR} は プロジェクトディレクトリに置換される。 |