PHP, SimpleXML diziler.

0 Cevap php

Örnek XML:

<root>
  <ratings>3</ratings>
  <ratings>5</ratings>
  <ratings>7</ratings>
</root>

Aşağıdaki kod beklendiği gibi çalışır, benim küçük uygulama için temel oluşturur:

<?php 
   // $xml is some simplexml object
   sizeof($xml->ratings); //3
   foreach($xml->ratings as $rating){
       echo($rating->value."::"); //this echoes all 3 rating values: 3::5::7
}
?>

Ben normalde eşdeğer olarak düşünün bu bir sonraki kod değildir. Ve ben neden hiçbir fikrim yok:

<?php 
    // $xml is some simplexml object
   $ratings = $xml->ratings;
   sizeof($ratings); //3, all is well so far
   foreach($ratings as $rating){
      echo($rating."::"); 
     /*this echoes a never-ending list of ratings,
     looking like 3::5::5::5::5::5::5::5...... */
  }
?>

Benim duygu atama operatörü garip bir şey olarak SimpleXML nesneler dizisi (derecelendirme nesneler) döküm, ama nasıl hiçbir ipucu var olmasıdır.

Diğer küçük ipuçları:

var_dump($xml);
/* Output is:
object(SimpleXMLElement)#7 (1) {
  ["ratings"]=>
  array(3) {
    [0]=>
    string(1) "3"
    [1]=>
    string(1) "5"
    [2]=>
    string(1) "7"
  }
}
*/
var_dump($ratings);
/* Output is:
object(SimpleXMLElement)#6 (1) {
    [0]=>
    string(1) "3"
}
*/

0 Cevap