報錯 Fatal error: Cannot declare function Demo2 est because the name is already in use in
問題描述
和老師一樣的代碼,報錯:
Fatal error: Cannot declare function Demo2test because the name is already in use in E:wwwrootphpbaseobjectnamespacetest2.php on line 5
test1代碼:
<?php
namespace Demo1;
function test($a,$b)
{
return $a*$b;
}
?>
test2代碼:
<?php
namespace Demo2;
require('test1.php');
use function Demo1test;
function test($a,$b)
{
return $a+$b;
}
echo test(4,5) ;// 非限定命名空間
echo "<hr>";
echo test(4,5);
?>
問題解答
回答1:你很好學,大兄弟!回答2:那就不知道了
回答3:最終結果是 9
test2.php 文件
test1.php 文件
test1.php 和 test2.php 是放在不同的 Demo1 和 Demo2 文件夾中
回答7:use function Demo1test; 這一行去掉 就可以了
回答8:老師代碼就是解決這種重名的,他演示沒有錯,我們用一樣的代碼就有錯回答9:test2 本身有一個 test方法 然后你引入的 test1 也有一個 test 方法
在同一個.php 存在相同方法 會你上邊的報錯
http://php.wyscdz.com
回答10:上面的錯誤是 php 版本是7.0.12
如果切換回 5.6.27 就報如下的錯:
Fatal error: Call to undefined function Demo1test()
相關文章:
1. Navicat for mysql 中以json格式儲存的數據存在大量反斜杠,如何去除?2. mysql - 怎么生成這個sql表?3. mysql - 數據庫建字段,默認值空和empty string有什么區別 1104. mysql - 數據庫表中,兩個表互為外鍵參考如何解決5. php - 公眾號文章底部的小程序二維碼如何統計?6. 怎么php怎么通過數組顯示sql查詢結果呢,查詢結果有多條,如圖。7. sql語句 - 如何在mysql中批量添加用戶?8. mysql儲存json錯誤9. mysql - 表名稱前綴到底有啥用?10. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實現存在即更新應該使用哪個標簽?
