2

次のような配列に静的変数を挿入しようとしています:

static $datas = array(
    'link' => config::$link
);

しかし、私はこのエラーが発生しています

解析エラー: 構文エラー、予期しない T_VARIABLE、T_STRING が必要です

私はPHPドキュメントが次のように言っていることを発見しました:

他の PHP 静的変数と同様に、静的プロパティはリテラルまたは定数を使用してのみ初期化できます。式は使用できません。したがって、静的プロパティを整数または配列 (たとえば) に初期化することはできますが、別の変数、関数の戻り値、またはオブジェクトに初期化することはできません。

しかし、それを行う方法があると確信しています。何か提案はありますか?

4

1 に答える 1

5

いいえ、回避策はありません。static変数とプロパティは、定数値でのみ初期化できます。これは、リテラルまたは定数を意味します。変数、staticまたは使用できない期間は使用できません。後でどこかで手続き型コードを使用して変数値を割り当てる必要があります。

于 2012-10-18T15:45:36.717 に答える