Tôi có kịch bản php này:chức năng bên trong hàm trong php: Lỗi: Không thể redeclare
function hoeveelzijner ($jaar, $id)
{
function hoeveelhoeveel($beginstamp, $endstamp, $id)
{
$dates = mysql_query('SELECT v_date FROM visitors WHERE id="'.$id.'" AND v_date<"'.$endstamp.'" AND v_date>"'.$beginstamp.'"');
return mysql_num_rows($dates);
}
$i = 1;
while ($i < 13)
{
$hoeveel[$i-1] = hoeveelhoeveel(mktime(0, 0, 0, $i, 1, $jaar),mktime(0, 0, 0, $i, cal_days_in_month(CAL_GREGORIAN,$i,$jaar),$jaar),$id);
$i = $i+1;
}
return $hoeveel;
}
Khi tôi đặt này bên dưới nó, nó hoạt động tốt:
$values = hoeveelzijner(2005, 1);
Tuy nhiên, khi tôi làm nó hai lần, ví dụ:
$values = hoeveelzijner(2005, 1);
$test = hoeveelzijner(2000, 4);
tôi nhận được lỗi này: Fatal error: không thể redeclare hoeveelhoeveel() (trước đây tuyên bố trong ...: 69) trong ... trên dòng 69.
Có ai biết tôi đang làm gì sai không? Nó sẽ phá hủy mục đích sử dụng các chức năng nếu tôi chỉ có thể sử dụng nó một lần ...
Thông tin bổ sung: Tôi không bao gồm bất kỳ tệp nào khác, cũng như không redeclare chức năng ở nơi khác trong tập lệnh.
Cảm ơn rất nhiều!
Xem nội dung này: http://stackoverflow.com/questions/1398801/php-function-inside-a-function-good-or-bad –