报错 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. MYSQL新建用户设置可以远程访问的问题2. mysql - SQL操作时间的函数?3. python - 求一个在def中可以实现调用本def满足特定条件continue效果的方法(标题说不太清楚,请见题内描述)4. docker内创建jenkins访问另一个容器下的服务器问题5. 正则表达式 - python pandas的sep参数问题6. javascript - 用表单提交两个时间段请求后台返回对应数据时出现的一些问题!7. angular.js - angularjs的自定义过滤器如何给文字加颜色?8. node.js - mongoDB使用$gte的问题9. javascript - ionic run android报错10. node.js - nodejs和前端JavaScript 字符串处理结果不一样是什么原因?
