Извините за глупый вопрос …
у меня есть в файле XML CDATA
в дочернем узле:
<placemark>
<description><![CDATA[ <h2>ML 2.1 - GREATER LOS ANGELES' AREA, CALIF.</h2><br><b>2016-09-29 16:10:00.3 UTC</b><br /><br /><table style="width:100%;"><tr><td><b>Latitude</b></td><td style="padding-left:5px;"> 34.13 N<br></td></tr><tr><td><b>Longitude</b></td><td style="padding-left:5px;"> 119.14 W<br></td></tr><tr><td><b>Deph</b></td><td style="padding-left:5px;"> 20 Km<br></td></tr><tr><td><b>Magnitude</b></td><td style="padding-left:5px;"> ML 2.1<br></td></tr></table><br /><br /><a href="http://www.emsc-csem.org/Earthquake/earthquake.php?id=534164"> Link to the event </a> ]]></description>
</placemark>
Я получаю CDATA, но я не знаю, как конвертировать его в строку php
Как можно добавить для'
используется в побеге обратной косой черты CDATA \
?
Таким образом, чем легко … просто напишите
$file= simplexml_load_file(FILE);
$CDATA = $file -> placemark -> description;
$string= "'".$CDATA."'"
Я надеюсь, что вы можете помочь мне, и извините за мой английский, большое спасибо за советы!
Литералы — это то, как вы пишете значения в исходном коде. В $foo = "abc";
"abc"
это строковый литерал.
$file->placemark->description
это пример SimpleXMLElement
и может быть брошен в строку.
Вот пример для явного приведения:
$string = (string)$file->placemark->description;
Но это может быть неявным, например, использовать его в строковом контексте:
echo $file->placemark->description;
Я не уверен, почему вы пытаетесь добавить к нему цитаты. Если вы пытаетесь вывести строку в JavaScript, вы должны попробовать json_encode()
,
Других решений пока нет …