PHP: Basit XML ile Need o p

3 Cevap php

PHP acemi duyuyorum. Ben bu xml dosyasını ayrıştırmak çalışıyorum.

<relationship>
 <target>
  <following type="boolean">true</following>
  <followed_by type="boolean">true</followed_by>
  <screen_name>xxxx</screen_name>
  <id type="integer">xxxx</id>
 </target>
 <source>
  <notifications_enabled nil="true"/>
  <following type="boolean">true</following>
  <blocking nil="true"/>
  <followed_by type="boolean">true</followed_by>
  <screen_name>xxxx</screen_name>
  <id type="integer">xxxxx</id>
 </source>
</relationship>

Ben hedef için 'type = "boolean" aşağıdaki "alanının değerini almak gerekiyor ve benim kod -

$xml = simplexml_load_string($response);

foreach($xml->children() as $child)
{
      if ($child->getName() == 'target')
      {
       foreach($child->children() as $child_1)
       if ( $child_1->getName() == 'following')
       {
        $is_my_friend = (bool)$child_1;
        break;
       }
       break;
      }
}

ama ben doğru çıktı almıyorum. Ben 'type = "boolean"' alanının bir parçası sorunlar yaratıyor düşünüyorum. Lütfen yardım edin.

3 Cevap

Ayrıca bunun için xpath kullanabilirsiniz.

foreach ($xml->xpath("//target/following[@type='boolean']") as $is_my_friend) 
{   
  echo $is_my_friend;
}

$ Xml = ($ yanıt) simplexml_load_string;

foreach($xml->target->following as $child) { $is_my_friend = $child; }

PHP boolean bir dize döküm zaman, boş bir dize ve "0" hariç tüm değerler DOĞRU kabul edilir.

http://www.php.net/manual/en/language.types.boolean.php#language.types.boolean.casting