Я новый разработчик, работаю в компании над сайтом. Я использую 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 для проверки значения $prices_with_sources перед операторами if, и это результат:
array(1) {
[1]=> array(3) {
["discountedPrice"]=> string(4) "5.99"
["suggestedPrice"]=> string(4) "5.99"
["source"]=> int(0)
}
}
Если у кого-то есть полезная информация, буду очень признателен, спасибо!
isset($prices_with_source[1]['discountedPrice'])
.... это вложенный массив - person Mark Baker   schedule 07.04.2016'discountedPrice'
- person Torchify   schedule 07.04.2016$row = current($prices_with_source);
, если знаете, что у вас есть только один элемент в коллекции. - person ash   schedule 07.04.2016