Я получаю эту ошибку для переобъявления saveorder () однако, я не думаю, что я?!?
Не может повторно объявить saveorder () (ранее объявленный в:10) на строке 71
8.function saveOrder()
9.{
10. include 'tables.php';
11. $orderId = 0;
12. $shippingCost = 5;
...
68. }
69. echo $orderId;
70. return $orderId;
71. }
Вы могли включать файл, содержащий функцию, более одного раза:
include 'file.php';
include 'file2.php';
file.php:
include 'file2.php';
Невозможно повторно объявить saveorder () (ранее объявлено in: 10) в строке 71
Либо используйте include_once
, либо require_once
, чтобы этого не произошло (это может вызвать проблемы, если вы попытаетесь включить его дважды в двух отдельных местоположения (например, сначала в файле, а потом по какой-то причине внутри функции, второе не будет работать, если вы включите часть _once
).
Либо table.php содержит функцию, также называемую saveOrder (), либо отправленный вами файл на самом деле IS tables.php. PHP не может иметь 2 функции с одинаковыми именами в одном пространстве имен.
Вы должны включать текущий файл (где строки) несколько раз.
Простое исправление - использование
if (!function_exists('saveOrder')) {
function saveOrder() {...}
}
Однако я рекомендую создать новый файл functions.php, в том числе только один раз, и поместив туда все функции.
это также может быть вызвано удалением функции saveorder () внутри другая функция, которая вызывается несколько раз.
например.
function func1()
{
function saveorder()
{
echo 'x';
}
saveorder();
}
for ($i=0;$i<2;++$i)
func1();