我是一名在网站上的公司工作的新开发人员。我正在使用isset()来检查是否在我知道具有值的变量中设置了某些内容,但它始终返回false。这是代码:
$prices_with_source = $user_company->getBranchApiImplementation()->getApiClass($controller,$apiDisabled)->getProductPrices($em, $partnership, array( array('product' => $product , 'quantity' => 1) ));
$prices_with_source = is_array($prices_with_source) ? reset($prices_with_source) : $prices_with_source;
if(isset($prices_with_source['discountedPrice']) && $prices_with_source['discountedPrice'] > 0) {
$price = $prices_with_source['discountedPrice'];
}
if(isset($prices_with_source['suggestedPrice'])) {
$price = $prices_with_source['suggestedPrice'];
}
应该输入if语句,因为我知道$ price_with_sources有值。我不知道为什么它不起作用。我使用var_dump在if语句之前检查$ prices_with_sources的值,这是输出:
array(1) {
[1]=> array(3) {
["discountedPrice"]=> string(4) "5.99"
["suggestedPrice"]=> string(4) "5.99"
["source"]=> int(0)
}
}
如果有人有任何有用的信息,我们将不胜感激,谢谢!
答案 0 :(得分:0)
Accessing a two dimension array in php
如果阻止更新
if(isset($prices_with_source[1]['discountedPrice']) && $prices_with_source[1]['discountedPrice'] > 0) {
$price = $prices_with_source[1]['discountedPrice'];
}
if(isset($prices_with_source[1]['suggestedPrice'])) {
$price = $prices_with_source[1]['suggestedPrice'];
}