Задать вопрос
@nonvon

Php simplexml дает разные реультаты, почему?

не могу собрать размеры с кол-вом в один массив, точнее на локальной машине норм

<offer>
<avail quantity="25">
<size quantity="5">S</size>
<size quantity="8">M</size>
<size quantity="13">L</size>
<size quantity="5">XL</size>
</avail>
</offer>


$attrs = $offer->avail->size;	
    foreach ($attrs as $key => $attr) 		  
      if ( ($key == 'size') and (!empty($attr)) )		
      {  
        $arr = (array)$attr;
        $tSizes[$arr[0]] = $arr["@attributes"]["quantity"];  
      }

object(SimpleXMLElement)#10 (2) {
  ["@attributes"]=>
  array(1) {
    ["quantity"]=>
    string(1) "5"
  }
  [0]=>
  string(1) "S"
}
object(SimpleXMLElement)#11 (2) {
  ["@attributes"]=>
  array(1) {
    ["quantity"]=>
    string(1) "8"
  }
  [0]=>
  string(1) "M"
}
object(SimpleXMLElement)#10 (2) {
  ["@attributes"]=>
  array(1) {
    ["quantity"]=>
    string(2) "13"
  }
  [0]=>
  string(1) "L"
}
object(SimpleXMLElement)#11 (2) {
  ["@attributes"]=>
  array(1) {
    ["quantity"]=>
    string(1) "5"
  }
  [0]=>
  string(2) "XL"
}


а на сервере часть с размером пропадает
[0]=>
string(1) "S"
  • Вопрос задан
  • 89 просмотров
Подписаться 2 Сложный Комментировать
Пригласить эксперта
Ответы на вопрос 1
@nonvon Автор вопроса
foreach ($offer->avail->size as $key => $attr) 	  
     if ( ($key == 'size') and (!empty($attr)) )		
       $tSizes[(string)$attr] = (string)$attr['quantity'];


всегда приводи к типу
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы