[英]Why can't I declare a “date” in a class?
我真的不知道谷歌是什么,因為我有點不知道行話就拿起PHP和OOP。
為什么這不適用於PHP?
class Calendar{
public $derp="lala";
public $todaysDate=date('Y-m-d',strtotime('2013-04-11'));
}
但這樣做呢?
class Calendar{
public $derp="lala";
public function __construct()
{
$this->todaysDate=date('Y-m-d',strtotime('2013-04-11'));
}
}
你不能在課程開頭宣布一個日期? 為什么?
來自PHP.net
TL; DR您無法使用非常量值初始化屬性。 函數不是常量值。
屬性
類成員變量稱為“屬性”。 您也可以使用“屬性”或“字段”等其他術語來查看它們,但出於本參考的目的,我們將使用“屬性”。 它們通過使用public,protected或private之一,然后是普通變量來定義
宣言。 此聲明可能包括初始化,但此初始化必須是常量值 - 也就是說,它必須能夠在編譯時進行評估,並且必須不依賴於運行時信息才能進行評估。
date
是一個功能。 函數從方法中調用。 另外,在構造函數中為$todaysDate
變量賦值更合適。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.