PHP变量赢得';不分配给数组值
我试图从下面的数组中分配PHP变量赢得';不分配给数组值,php,arrays,Php,Arrays,我试图从下面的数组中分配$totalPrice一个值,但它只返回0,echo$totalPrice在一些HTML代码中,如果我使用echo$sites[$site][0],它会显示该值,但在分配给$totalPrice时不会显示该值 $totalPrice = 0; $site = "UM"; $totalPrice = $sites[$site][0]; $sites = array ( "US" => array (38.78, 11, 5.5),
$totalPrice
一个值,但它只返回0,echo$totalPrice
在一些HTML代码中,如果我使用echo$sites[$site][0],它会显示该值,但在分配给$totalPrice
时不会显示该值
$totalPrice = 0;
$site = "UM";
$totalPrice = $sites[$site][0];
$sites = array
(
"US" => array (38.78, 11, 5.5),
"UM" => array (44.55, 11, 5.5),
"PS" => array (55.28, 11, 5.5),
"PM" => array (66.55, 11, 5.5)
)
echo $totalPrice;
您使用了
$totalPrice=$sites[$site][0]代码>变量$sites
在初始化之前,这就是为什么它每次都给出0的答案 您可以尝试此代码..您需要在数组值下方声明$totalPrice
$totalPrice = 0;
$site = "UM";
$sites = array(
"US" => array (38.78, 11, 5.5),
"UM" => array (44.55, 11, 5.5),
"PS" => array (55.28, 11, 5.5),
"PM" => array (66.55, 11, 5.5)
);
$totalPrice = $sites[$site][0];
echo $totalPrice;
我似乎在您的代码中找不到$totalPeople
,也在第3行中,您在声明之前正在使用$sites
。该(更正的)代码按预期工作:-错误必须在其他地方。@Jeff在初始化之前使用$sites
时如何工作?@Mehdi true。我认为这是复制粘贴错误,因为显示的代码也会产生语法错误。@RJD语句是按照您在文件中写入它们的顺序执行的。当行$totalPrice=$sites[$site][0]时代码>已执行,$sites
尚不存在。因此,PHP会发出一个通知(您可能看不到),并将$totalPrice
设置为NULL
(即未设置/未定义)。您有一个语法错误。此外,这不是一个很好的回答方法,请添加一个解释。告诉OP为什么他的代码是错误的,为什么你的代码是正确的。
$totalPrice = 0;
$site = "UM";
$sites = array(
"US" => array (38.78, 11, 5.5),
"UM" => array (44.55, 11, 5.5),
"PS" => array (55.28, 11, 5.5),
"PM" => array (66.55, 11, 5.5)
);
$totalPrice = $sites[$site][0];
echo $totalPrice;