2011-10-31 17 views
18

kullanarak PHP, bir dize böyle bir formatta benim koduna gelen ayrıştırmak zorunda:Değeri (stdClass) nesnesinden nasıl alabilirim?

object(stdClass)(4) { ["Title"]=> string(5) "Fruit" ["Color"]=> string(6) "yellow" ["Name"]=> string(6) "banana" ["id"]=> int(3) } 

Ben basit bir çözüm olduğuna eminim, ama onu bulmak için görünmüyor olabilir ... nasıl Renk ve İsim almak için?

Çok teşekkürler.

+1

mı:

$array = get_object_vars($obj); 

bir göz atın obj-> Title $ obj-> Colour –

+0

Eğer t oluşturmak için kullandığınız kod snipini yüklerseniz, biraz daha anlayışlı olurdu şapka çıkışı. – 0xd

+0

Bekle, ne? Bir dizeyi "* ayrıştırmanız" gerekir mi? Yoksa bu gerçek bir nesne değişkeni mi? – mario

cevap

39

Yapabilirsiniz: $obj->Title etcetera.

Yoksa bir diziye dönüştürebilirsiniz: Çok gibi onlardan stdClass nesneleri ve erişim yöntemlerini oluşturmak

$array = get_object_vars($obj); 
+0

Teşekkürler! $ obj-> Başlık benim için yapar. – dwarbi

+0

@dwarbi no problem^_^ – Neal

+0

Güzel ... benim için çalışıyor – deemi

10

: Ben stdClass sınıflara kadar kendi genel sınıf oluşturmayı tavsiye

$obj = new StdClass; 

$obj->foo = "bar"; 
echo $obj->foo; 

kendi yöntemlerinizi sağlayabilirsiniz. Bir dizinin içine stdClass nesnesi Torna

:

Aşağıdaki kodu kullanarak bunu yapabilirsiniz

: Eğer $ çalıştı http://php.net/manual/en/language.oop5.magic.php http://krisjordan.com/dynamic-properties-in-php-with-stdclass

+0

Yardımlarınız için teşekkür ederiz! Sadece $ obj-> Title'a ihtiyacım var, ama gelecek için diğer bilgileri bilmek güzel. – dwarbi

İlgili konular