2016-04-07 108 views
0

我是在網站上的公司工作的新開發人員。我使用isset()來檢查是否有一個變量被設置,我知道它有一個值,但它總是返回false。這裏是代碼:當它應該是true時Isset()返回false - Symfony PHP

$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) 
    } 
} 

如果任何人有任何有用的信息,將不勝感激,謝謝!

+6

'isset($ prices_with_source [1] [ 'discountedPrice'])'....它是一個嵌套數組 –

+0

你有一個嵌套數組那裏。 – fantasticrice

+0

索引不是'discountedPrice'' – Torchify

回答

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']; 
} 
+0

謝謝,這解決了這個問題。我現在看到錯誤是什麼! –

相關問題