Tag: simplexml

在PHP中使用带连字符的XML节点名称

我想从XML中提取一些数据,但是当我执行以下时,我得到一个 警告:为foreach()提供的无效参数… 代码示例: foreach ($xml->custom-field-value as $milestone) { … } 它适用于单个单词的节点名称,所以我猜测它不喜欢连字符。 我是否需要逃避他们,如果是这样的话?

从PHP SimpleXML节点获取实际值

$value = $simpleXmlDoc->SomeNode->InnerNode; 实际上将一个simplexml对象赋值给$ value,而不是InnerNode的实际值。 如果我做: $value = $simpleXmlDoc->SomeNode->InnerNode . "\n"; 我明白了价值。 无论如何获得实际价值没有笨拙的样子. "\n" . "\n" ?

如何检查一个string是否是一个有效的XML在PHP中显示警告

我试图使用这个simplexml_load_string() Docs函数检查string的有效性为xml,但它显示了很多警告消息。 我怎样才能检查一个string是否是一个有效的XML而不压制( @在开始 )的错误, 并显示一个警告函数,预计

PHP 7 simpleXML

我正在testingPHP7,最近更新后有一个奇怪的问题。 SimpleXML应该默认启用,我的phpinfo页面显示它是可用的: 但是,function不可用: <?php if (function_exists('simplexml_load_file')) { echo "simpleXML functions are available.<br />\n"; } else { echo "simpleXML functions are not available.<br />\n"; } // result– NOT available 并且该模块未列为已加载: ~ $ php -m [PHP Modules] calendar Core ctype curl … Reflection session shmop sockets SPL standard sysvmsg sysvsem sysvshm tokenizer Zend OPcache zlib 任何人都知道是否有这个解决方法? 版本信息: […]

如何使用SimpleXmlElement编写CDATA?

我有这个代码来创build和更新XML文件: <?php $xmlFile = 'config.xml'; $xml = new SimpleXmlElement('<site/>'); $xml->title = 'Site Title'; $xml->title->addAttribute('lang', 'en'); $xml->saveXML($xmlFile); ?> 这将生成以下xml文件: <?xml version="1.0"?> <site> <title lang="en">Site Title</title> </site> 问题是:有没有办法用这种方法添加CDATA来创build下面的xml代码? <?xml version="1.0"?> <site> <title lang="en"><![CDATA[Site Title]]></title> </site>

PHP的SimpleXML检查是否存在一个孩子

A->b->c可能存在,但c可能不存在。 我如何检查它?

使用SimpleXML使用名称空间parsingXML

我有这个作为XML: <root xmlns:event="http://www.webex.com/schemas/2002/06/service/event"> <event:event> <event:sessionKey></event:sessionKey> <event:sessionName>Learn QB in Minutes</event:sessionName> <event:sessionType>9</event:sessionType> <event:hostWebExID></event:hostWebExID> <event:startDate>02/12/2009</event:startDate> <event:endDate>02/12/2009</event:endDate> <event:timeZoneID>11</event:timeZoneID> <event:duration>30</event:duration> <event:description></event:description> <event:status>NOT_INPROGRESS</event:status> <event:panelists></event:panelists> <event:listStatus>PUBLIC</event:listStatus> </event:event> … </root> 我怎样才能循环所有的事件:事件节点和显示,例如,所有的事件:SessionKey的? 这不起作用: $xml = new SimpleXMLElement($r); $xml->registerXPathNamespace('e', 'http://www.webex.com/schemas/2002/06/service/event'); foreach($xml->xpath('//e:event') as $event) { var_export($event->xpath('//e:sessionKey')); }

“xmlParseEntityRef:无名字”的警告,而加载到PHP文件的XML

我正在阅读PHP中使用simplexml_load_file xml。 然而,当试图加载XML它显示一个警告列表 Warning: simplexml_load_file() [function.simplexml-load-file]: <project orderno="6" campaign_name="International Relief & Development" project in /home/bluecard1/public_html/test.php on line 3 Warning: simplexml_load_file() [function.simplexml-load-file]: ^ in /home/bluecard1/public_html/test.php on line 3 Warning: simplexml_load_file() [function.simplexml-load-file]: http://…./index.php/site/projects/:15: parser error : xmlParseEntityRef: no name in /home/bluecard1/public_html/test.php on line 3 Warning: simplexml_load_file() [function.simplexml-load-file]: ional Relief & Development" project_id="313" client_name="International Relief & in /home/bluecard1/public_html/test.php […]

SimpleXmlstring

有没有任何函数,使PHP从simpleXMLElementstring?

PHP的DOM和SimpleXML扩展之间有什么区别?

我无法理解为什么我们需要PHP中的2个XMLparsing器。 有人能解释这两者之间的区别吗?