我收到这个错误重新声明saveorder()然而,我不认为我是?!?
无法在第71行重新声明saveorder()(先前在:10中声明)
8.function saveOrder()
9.{
10. include 'tables.php';
11. $orderId = 0;
12. $shippingCost = 5;
Run Code Online (Sandbox Code Playgroud)
...
68. }
69. echo $orderId;
70. return $orderId;
71. }
Run Code Online (Sandbox Code Playgroud)
Sea*_*nJA 10
您可以多次包含包含该函数的文件:
include 'file.php';
include 'file2.php';
Run Code Online (Sandbox Code Playgroud)
file.php:
include 'file2.php';
Run Code Online (Sandbox Code Playgroud)
Cannot redeclare saveorder() (previously declared in :10) on line 71
要么使用include_once或require_once以确保它不会发生(如果您尝试包括两次在两个不同的位置(如第一个文件,后来由于某种原因在函数内部,第二个将无法正常工作,如果这会导致问题你包括_once部分).
您必须多次包含当前文件(行的来源)。
一个简单的解决方法是使用
if (!function_exists('saveOrder')) {
function saveOrder() {...}
}
Run Code Online (Sandbox Code Playgroud)
但是,我建议创建一个新的functions.php 文件,只包含一次,并将所有函数放在那里。