SORU
16 NİSAN 2009, PERŞEMBE


Nasıl bölünmüş bir isim ile bu nesne özelliği erişebilirim?

Birisi BaseCamp API için yazdığım bir PHP sınıfını kullanıyorum.

Yapıyorum özellikle bu ara gayet iyi çalışıyor, yapılacaklar listesi öğeleri almak için.

Benim sorunum, döndürülen nesne todo-items sadece bu özelliğe erişmek için nasıl emin değilim. Burada döndürülen nesnenin var_dump:

object(stdClass)[6]
  public 'completed-count' => string '0' (length=1)
  public 'description' => string 'Description String' (length=89)
  public 'id' => string '12345' (length=7)
  public 'milestone-id' => string '' (length=0)
  public 'name' => string 'Error Reports' (length=13)
  public 'position' => string '1' (length=1)
  public 'private' => string 'false' (length=5)
  public 'project-id' => string '58904' (length=7)
  public 'tracked' => string 'false' (length=5)
  public 'uncompleted-count' => string '1' (length=1)
  public 'todo-items' => 
    object(stdClass)[3]
      public 'todo-item' => 
        object(stdClass)[5]
          public 'completed' => string 'false' (length=5)
          public 'content' => string 'content string here' (length=133)
          public 'created-on' => string '2009-04-16T20:33:31Z' (length=20)
          public 'creator-id' => string '23423' (length=7)
          public 'id' => string '234' (length=8)
          public 'position' => string '1' (length=1)
          public 'responsible-party-id' => string '2844499' (length=7)
          public 'responsible-party-type' => string 'Person' (length=6)
          public 'todo-list-id' => string '234234' (length=7)
  public 'complete' => string 'false' (length=5)

Nasıl bu nesnenin todo-items bölümü erişebilirim?

CEVAP
16 NİSAN 2009, PERŞEMBE


<?php
$x = new StdClass();
$x->{'todo-list'} = 'fred';
var_dump($x);

Dolar -^ nesne . {'yapılacaklar listesi yapılacaklar'} alt nesne. Eğer böyle bir şey varsa, o da aynı şekilde okuyabilirsiniz.

Eğer istediğin dönüştürmek için bir dizi, biraz daha kolay (yani bariz $ret['yapılacaklar listesi'] erişim), bu kodu alınır neredeyse birebir gelen Zend_Config ve dönüştürmek için.

public function toArray()
{
    $array = array();
    foreach ($this->_data as $key => $value) {
        if ($value instanceof StdClass) {
            $array[$key] = $value->toArray();
        } else {
            $array[$key] = $value;
        }
    }
    return $array;
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • aki6336

    aki6336

    14 AĞUSTOS 2008
  • Grace Su

    Grace Su

    6 Ocak 2006
  • Rickymon Tero

    Rickymon Ter

    1 Ocak 2007