PHP中的参数提示
PHP為了解決自己是弱類型語言在調用方法是傳參類型可能導致的問題,引入了參數提示,看代碼
1 <html> 2 <body> 3 <?php 4 class Man { 5 private $name; 6 7 function getName() { 8 return $this->name; 9 } 10 11 function setName($name) { 12 $this->name = $name; 13 } 14 } 15 16 class Wrong {} 17 18 function callMan(Man $man) { 19 echo "Hey " . $man->getName(); 20 } 21 22 $man = new Man(); 23 $man->setName('Jack'); 24 25 callMan($man); 26 callMan(new Wrong()); 27 ?> 28 </body> 29 </html>再看輸出
Hey Jack
Catchable fatal error: Argument 1 passed to callMan() must be an instance of Man, instance of Wrong given, called in D:\www\index.php on line 26 and defined in?D:\www\index.php?on line?18
?由于callMan()函數傳入參數類型不是Man,導致了catchable fatal error,至此我覺得PHP慢慢變得自相矛盾,許多自己的特性給自己造成了困擾,然后又出新特性來解決原來的問題
轉載于:https://www.cnblogs.com/zemliu/archive/2012/05/19/2509079.html
總結
- 上一篇: WebSphere MQ 自动启动发送方
- 下一篇: Advanced Transact-SQ