[英]Php can't redeclare function
据我所知,该函数仅声明一次。 但我收到此错误,无法重新声明calcPercentages(),它告诉我它在第17行声明是正确的
包含错误函数的函数...
function auditStats($audit){
$mysqli = dbConnect();
$audit_id = $audit;
$result = $mysqli->query("SELECT imageGrade, SUM(imageGrade=1) AS grade1, SUM(imageGrade=2) AS grade2, SUM(imageGrade=3) AS grade3, COUNT(*) AS total_imgs FROM image WHERE type != 'standard' and auditID ='$audit_id'")or exit("Error code ({$mysqli->errno}): {$mysqli->error}");
$row = $result->fetch_assoc();
$grade1 = $row['grade1'];
$grade2 = $row['grade2'];
$grade3 = $row['grade3'];
$totalImgs = $row['total_imgs'];
function calcPercentages($grade, $total){
$percent = round(($grade / $total) * 100,2);
return $percent;
}
if ($totalImgs != 0){
$percent_1 = calcPercentages($grade1, $totalImgs);
}
$return_array = [
'total'=>$totalImgs,
'percent_1'=>$percent_1
];
return $return_array;
}
除了auditStats函数内部以外,没有在任何地方调用该函数,并且使用以下方法在页面的更下方调用结果
$percent_1 = auditStats($auditID)[percent_1];
如果我犯了一个明显的新手错误,请原谅,我正在从程序性转向OOP,并且刚开始。
您在auditStats
函数内声明calcPercentages
,因此每次调用auditStats
时都会重新声明它。
移动calcPercentages
之外auditStats
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.