批改状态:合格
老师批语:因为time()是一个系统函数, 命名冲突 了, 你可以给你的time()添加命名空间, 只要不在全局就可以
<?php
function t($a,$b,... $c)
{
return array_product($c)*$b*$a;
}
echo t(1,2,3,4);
?>点击 "运行实例" 按钮查看在线实例
$a对应实参为1,$b对应实参为2,剩余参数$c=3,4,分步求积
还有一种方法:把$a,$b添加到$c中,用array_product直接求乘积
<?php
function t($a,$b,... $c)
{
$argArr=func_get_args();
array_push($c,$b,$a);
//print_r($c);
return array_product($c);
// array_unshift($c,$a,$b);
//print_r($c);
}
echo t(1,2,3,4);
?>点击 "运行实例" 按钮查看在线实例

此次作业在写的过程中发现一个问题:当我的函数名是time时运行就显示错误,是t时就没毛病,这是为什么?
报错内容为:Fatal error: Cannot redeclare time() in D:\CMS8\phpstudy_pro\WWW\www.k.com\hanshu\demo1.php on line 15
翻译为:致命错误:无法在第15行的d:\\cms8\\phpstudy\u pro\\www\\www.k.com\\hanshu\\demo1.php中重新声明time()。
还有就是为什么有的代码写好了,假设现在运行就显示有误,然后改来改去就一直报一个错误提示,过几个小时后再运行同样的代码就不报错了?(意思就是说,我现在写了个php文件,运行浏览器显示有误,然后不动它过几个小时再运行就没问题了,删除浏览器缓存也没用,这是为啥????)
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号