2017-04-19 44 views
0

我想從這個數組呼應價值的具體項目,所以它會說「真」回波陣列

::object(stdClass)#25 (2) { ["Name"]=> string(3) "DPV" ["Value"]=> string(4) "true" } 

我怎樣才能做到這一點在PHP?

+4

這不是一個數組,可能是你的問題。 – AbraCadaver

+0

是的@AbraCdaver,它似乎來自var_dump()的響應;的具體變量。請添加您的實際陣列。 –

+0

http://php.net/manual/en/language.oop5.properties.php –

回答

0

假設Value的對象屬性是公共的(其是或它不會是輸出),則可以使用PHP的對象操作者->

如:

echo $obj->Value; 

在它不是公開的情況下,你會想使用get menthod,像這樣

class obj{ 
     protected $Value = true; 

     public function getValue(){ 
      return $this->Value; 
     } 
} 

$obj = new obj(); 
echo $obj->getValue(); 

正如您可以看到以相同的基本方式(使用->)訪問對象屬性。這與你如何訪問數組中的元素不同。你可以在一個對象上實現ArrayAccess,它允許你像使用數組一樣使用它,但這是另一個時間的帖子。

http://php.net/manual/en/class.arrayaccess.php

0

只需

<?php 

echo $objectVarName->Value; 

注意$objectVarName不是array,它是一個object

A作爲以下在PHP陣列的非常常見的例子:

$array = array(
    "foo" => "bar", 
    "bar" => "foo", 
); 
+1

雖然這段代碼可以解決這個問題,[包括解釋](// meta.stackexchange.com/questions/114762/explaining-完全基於代碼的答案)確實有助於提高帖子的質量。請記住,您將來會爲讀者回答問題,而這些人可能不知道您的代碼建議的原因。 –

+0

如果數組中有4個項目,並且所有4個項目都有值,那麼該怎麼辦? – koepitz

+0

第一:這不是一個數組,這是一個對象。第二:然後對於每個項目/參數,您必須'echo $ objectVarName-> parameterName;' 或者如果這只是爲了調試目的,您可以'var_dump($ objectVarName);'或'print_r $ objectVarName);' – Hossam

0

下面是簡單的解決方案,可能會有所幫助。

<?php 
    //Let suppose you have this array 
    $arr = array('id'=>1,'name'=>'alax','status'=>'true'); 

    //Check out array (Basically return array with key and value). 
    print_r($arr); 

    // Get value from the particular index 
    echo "<br/>Your value is:".$arr['status']; 
?>