[請益] Class的一些問題
function getDataSource(){
static $IsCreated = false;
static $DataSource ;
if(!$IsCreated){
$DataSource = new DataSource;
$IsCreated = true;
}
return $DataSource;
}
在這裡,我想創造一個唯一的DataSource這個class的reference
透過這個函數取得,但是這樣看起來很蠢
我用之前在C++裡面的寫法
function getDataSource(){
static $DataSource = new DataSource;
return $DataSource;
}
但是卻得到像這樣的錯誤訊息
Parse error: parse error, unexpected T_NEW in
/home/customer/kinmen.info/www/test.php on line 38
使用的版本是4.3.11
請問是因為static的變數 在這個版本裡規定 本來就不能使用new這個operator
還是我寫的方式不對?
接著,還有一個問題就是,直接使用Class::Function取得的Class Refrence
去做->然後存取東西也會出錯
echo DataSource::getDataSource()->GetData();
錯誤訊息
Parse error: parse error, unexpected T_OBJECT_OPERATOR, expecting ',' or ';'
in /home/customer/kinmen.info/www/test.php on line 52
而修正問題的方式我先用一個變數去接class的refrence
然後再操作這個變數就解決了
$DataSource = DataSource::getDataSource();
echo $DataSource->GetData();
但是我還是希望能夠直接操作回傳來的class,請問該怎樣寫呢?
--
VICTOR工作室 | PTT遊戲設計版隆重開幕!
| 不管是新手老手,程式美工音樂企劃....
URL : http://www.kinmen.info/vic/ | 都歡迎來遊戲設計版參與討論 XD
| 戰略高手>
C/C++ | GameTopics>
Visual Basic 6.0 | GameDesign
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.116.70.204
推
01/23 19:03, , 1F
01/23 19:03, 1F
→
01/23 19:04, , 2F
01/23 19:04, 2F
→
01/23 19:05, , 3F
01/23 19:05, 3F
討論串 (同標題文章)
PHP 近期熱門文章
PTT數位生活區 即時熱門文章