PHP 文件規定可以使用常數值來初始化類別屬性宣告。但是,使用者在嘗試使用非常量表達式初始化陣列時遇到了語法錯誤。
語法錯誤範例:
<code class="php">public $var = array( 1 => 4, 2 => (4+1), // Syntax error );</code>
潛在問題:
此錯誤源自PHP 5.5 及更早版本中的限制,其中屬性聲明中只允許使用常數值。這包括可以在編譯時評估的值。但是,禁止使用計算表達式,例如“4 1”。
PHP 5.6 中的解決方案:
此限制在 PHP 5.6 中已透過引入取消常數標量表達式。此功能允許使用以下語法:
<code class="php">public $var = array( 1 => 4, 2 => (4+1), ); public $var = 4+1;</code>
結論:
早期版本的PHP 中使用非常量表達式初始化類別屬性時遇到的語法錯誤有PHP 5.6以上版本已解決。常量標量表達式現在使開發人員能夠使用可在編譯時評估的計算值來初始化屬性。
以上是PHP 類別屬性可以用非常量表達式初始化嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!