2014-08-28 47 views
-6

我有一個返回鍵和值的數組。如何在關聯數組(PHP)上打印或獲取特定值

<?php 

print_r(array_values($arResult["DISPLAY_PROPERTIES"])); 
$arresults = $arResult["DISPLAY_PROPERTIES"]; 

    ?> 

上面的代碼會顯示這樣的結果:

Array ([0] => Array 
     ([ID] => 29 
     [TIMESTAMP_X] => 2014-08-26 08:23:13 
     [IBLOCK_ID] => 3 
     [NAME] => ProductID 
     [ACTIVE] => Y 
     [SORT ] => 500 
     [CODE] => product_id 
     [DEFAULT_VALUE] => 
     [PROPERTY_TYPE] => S 
     [ROW_COUNT] => 1 
     [COL_COUNT] => 30 
     [LIST_TYPE] => L 
     [MULTIPLE] => N 
     [XML_ID] => [file_type] => 
     [MULTIPLE_CNT] => 5 
     [TMP_ID] => 
     [LINK_IBLOCK_ID] => 0 
     [WITH_DESCRIPTION] => N 
     [SEARCHABLE] => N 
     [filtrable] => N 
     [IS_REQUIRED] => N 
     [VERSION] = > 1 
     [user_type] => 
     [USER_TYPE_SETTINGS] => 
     [HINT] => 
     [PROPERTY_VALUE_ID] => 11880 
     [VALUE] => PCA.CD08.21.A1 
     [DESCRIPTION] => 
     [VALUE_ENUM] => 
     [VALUE_XML_ID] => 
     [VALUE_SORT] => 
     [~ VALUE] => PCA.CD08.21.A1 
     [~ DESCRIPTION] => 
     [~ NAME] => ProductID 
     [~ DEFAULT_VALUE] => 
     [display_value] => PCA.CD08.21.A1) 
    ) 

問題:我怎樣才能顯示值PCA.CD08.21.A1。什麼PHP代碼做的我用於僅顯示PCA.CD08.21.A1

請幫我...

+0

什麼以下普林?的print_r($ arResult [ 'DISPLAY_PROPERTIES']);因爲array_values刪除了密鑰 – 2014-08-28 09:53:35

+1

@vizvi即將做同樣的事情... Redshot,請格式化您的問題,以便易於閱讀,並使人們很容易回答 - 這只是您的興趣。 – Fluffeh 2014-08-28 10:03:21

回答

2

你可以簡單地直接訪問該值:因爲調用array_values()$arResult

echo $arResult['DISPLAY_PROPERTIES'][0]['VALUE']; 

但是,你必須用正確的指數來替代指數0,將數字重新索引它。

+0

同樣在這裏,0索引是array_values方法的結果,它更好,更好地通過右鍵訪問它 – 2014-08-28 09:55:47

+0

謝謝,更正:) – 2014-08-28 09:59:53

0

這是你需要的嗎?

$display_value = $arResult["DISPLAY_PROPERTIES"][0]["display_value"] 

記住,我們不知道什麼是數組中的第一個關鍵是你能做到保持如下:

$arr = array_shift($arResult["DISPLAY_PROPERTIES"]); 
$display_value = $arr["display_value"]; 
+0

0索引是array_values的結果,所以他不應該使用array_values方法並按名稱訪問它 – 2014-08-28 09:54:31

0
foreach($arResult["DISPLAY_PROPERTIES"] as $key => $value) 
{ 
if($key == 'VALUE') 
    echo $value; 
}