Answer the question
In order to leave comments, you need to log in
Why doesn't simplexml_load_string() understand a valid xml string?
There is a line with xml, this is her wardump
string(941) "<?xml version="1.0"?><stats><breakdown date="2020-02-26"><responses>690292</responses><impressions>103203</impressions><revenue>142.1773</revenue></breakdown><breakdown date="2020-02-27"><responses>679646</responses><impressions>105329</impressions><revenue>60.7610</revenue></breakdown><breakdown date="2020-02-28"><responses>908865</responses><impressions>136551</impressions><revenue>68.2343</revenue></breakdown><breakdown date="2020-02-29"><responses>1268946</responses><impressions>248969</impressions><revenue>91.9452</revenue></breakdown><breakdown date="2020-03-01"><responses>926947</responses><impressions>195786</impressions><revenue>85.0645</revenue></breakdown><breakdown date="2020-03-02"><responses>528795</responses><impressions>67999</impressions><revenue>46.4714</revenue></breakdown><breakdown date="2020-03-03"><responses>903159</responses><impressions>124702</impressions><revenue>100.8346</revenue></breakdown></stats>"
$this->xml = simplexml_load_string($this->xml);
Answer the question
In order to leave comments, you need to log in
Everything works
<?php
$string = '<?xml version="1.0"?><stats><breakdown date="2020-02-26"><responses>690292</responses><impressions>103203</impressions><revenue>142.1773</revenue></breakdown><breakdown date="2020-02-27"><responses>679646</responses><impressions>105329</impressions><revenue>60.7610</revenue></breakdown><breakdown date="2020-02-28"><responses>908865</responses><impressions>136551</impressions><revenue>68.2343</revenue></breakdown><breakdown date="2020-02-29"><responses>1268946</responses><impressions>248969</impressions><revenue>91.9452</revenue></breakdown><breakdown date="2020-03-01"><responses>926947</responses><impressions>195786</impressions><revenue>85.0645</revenue></breakdown><breakdown date="2020-03-02"><responses>528795</responses><impressions>67999</impressions><revenue>46.4714</revenue></breakdown><breakdown date="2020-03-03"><responses>903159</responses><impressions>124702</impressions><revenue>100.8346</revenue></breakdown></stats>';
$xml = simplexml_load_string($string);
var_dump($xml->breakdown);
What is the decimal separator set on the system?
I somehow had a similar situation, and there was a comma separator, so the parser considered the numbers invalid, and, accordingly, could not recognize the string as valid.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question