作者JYHuang (夏天到了,冷不起來了說)
看板PHP
標題[討論] 一個物件呼叫的疑問
時間Thu Aug 23 11:38:30 2012
class test{
const str1= '123';
public function func1(){
//dome some thing here
}
}
$cmd = 'func1';
$str = 'str1';
test::$cmd(); <--可以正確呼叫func1()
test::$str; <--不能取用123這串數字
Access to undeclared static property: test::$str
查了一下,似乎是test::$str 以類別屬性為優先、而不去找常數
那如果我想要以變數去取常數的話,還有什麼方法呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.116.202.164
→ chrisQQ:其實 public 的不應該可以直接這樣 call ... 08/23 12:07
→ chrisQQ:你如果不打算建立 instance 再 call 的話,就改成 static 08/23 12:08
推 Jerr:constant("test::".$str); 08/23 12:17
→ chrisQQ:原來我看錯問題 XD 被自己誤導 囧 08/23 15:10
→ JYHuang:感謝Jerr..因為是要賦予值的關係,就不用eval了 08/24 11:59