2017-01-25 8 views
0

私はこのオブジェクトをAPIから持っています。配列へのオブジェクト、型ヒントが機能しない

object(DotMailer\Api\DataTypes\XsInt)#62 (1) { 
     ["value":"DotMailer\Api\DataTypes\XsInt":private]=> int(16711) 
} 
object(DotMailer\Api\DataTypes\XsInt)#67 (1) { 
     ["value":"DotMailer\Api\DataTypes\XsInt":private]=> int(16722) 
} 
object(DotMailer\Api\DataTypes\XsInt)#73 (1) { 
    ["value":"DotMailer\Api\DataTypes\XsInt":private]=> int(16723) 
} 

どのように配列に変換できますか?

私が試してみた:

$arr = (array) $apiResponse; 
をしかし、私はちょうどNULLを取得します。

+1

を、これらのオブジェクトのいずれかのSee the DotMailer API client code here.

ので、?すべての属性はプライベートです。 –

+0

このオブジェクトの配列を意味しますか? – RiggsFolly

+0

get_object_vars()関数についてはどうですか? –

答えて

1

、あなただけのことができるようにすべきですechovalueプロパティはプライベートですが、XsIntには__toStringメソッドがあり、valueを返します。

echo $theObject; 

またはあなたがそれらのオブジェクトの配列を持っている場合:あなたはここに期待した出力のどのような

foreach ($array as $object) { 
    echo $object; 
} 
+0

ありがとうございました。 – panthro

0

オブジェクトが1つの場合は、(array) $objを使用できます。

あなたがオブジェクトの配列を持っている場合は、あなたがarray_mapを使用することができますが:

class Foo 
{ 
    private $foo; 

    public function __construct() 
    { 
     $this->foo = 1; 
    } 
} 

$foo = [new Foo, new Foo]; 
$array = array_map(function($item) { 
    return (array)$item; 
}, $foo); 

出力:これらのXsIntオブジェクトのそれぞれについて

array(2) { 
    [0]=> 
    array(1) { 
    ["Foofoo"]=> 
    int(1) 
    } 
    [1]=> 
    array(1) { 
    ["Foofoo"]=> 
    int(1) 
    } 
} 
関連する問題