Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php SimpleXML加载无法获取名称空间_Php_Namespaces_Simplexml - Fatal编程技术网

Php SimpleXML加载无法获取名称空间

Php SimpleXML加载无法获取名称空间,php,namespaces,simplexml,Php,Namespaces,Simplexml,当我尝试获取名称空间时,我得到了一个错误的结果,SimpleXML扩展被加载,没有抛出错误 注意:在本地机器上,我也不能复制,但在共享主机上它总是可以复制的,有什么原因吗 片段: <?php $xmlString = <<<DATA <?xml version="1.0" ?> <some version="2.0" xmlns:a="test0" xmlns:b="test1" xmlns:c="test2"></some> DAT

当我尝试获取名称空间时,我得到了一个错误的结果,SimpleXML扩展被加载,没有抛出错误


注意:在本地机器上,我也不能复制,但在共享主机上它总是可以复制的,有什么原因吗

片段:

<?php
$xmlString = <<<DATA
<?xml  version="1.0" ?>
<some version="2.0" xmlns:a="test0" xmlns:b="test1" xmlns:c="test2"></some>
DATA;
$xml = simplexml_load_string( $xmlString );
var_dump($xml->getDocNamespaces());
预期: 得到

simplexml不获取该名称空间有什么选择或原因吗

附言。 我尝试过使用simplexml\u load\u file、simplexml\u import\u dom(new DomDocument->loadXML..),它们都返回相同的结果

p.S.2

PHP Version 5.6.29
SimpleXML
Simplexml support   enabled
Revision    $Id: d7077fc935154236afb4fe70814ba358efdbdca4 $
Schema support  enabled
试试这个:

我已将true添加到
getDocNamespaces(true)


当我运行你的代码时,我得到如下结果:数组(3){[“a”]=>string(5)“test0”[“b”]=>string(5)“test1”[“c”]=>string(5)“test2”}无法在本地机器上重现这个问题,我也无法重现,但在共享主机中它总是可重现的,有什么原因吗?正如我在phpinfo ecbiz102.inmotionhosting.com中看到的那样,phpinfo看起来很好,但无论如何名称空间都不起作用。尝试一下这个应该会有帮助,我会接受答案,但问题仍然存在,我认为托管PHP配置或一些编译修改的唯一原因。当地一切正常。因此,目前我们可以使用XMLReader或无名称空间解析。谢谢你的帮助。
a=>test0,
b=>test1,
c=>test2
PHP Version 5.6.29
SimpleXML
Simplexml support   enabled
Revision    $Id: d7077fc935154236afb4fe70814ba358efdbdca4 $
Schema support  enabled
<?php

$xml = <<<XML
<?xml version="1.0" standalone="yes"?>
<some version="2.0" xmlns:a="test0" xmlns:b="test1" xmlns:c="test2"></some>
XML;

$sxe = new SimpleXMLElement($xml);

$namespaces = $sxe->getDocNamespaces(TRUE);
var_dump($namespaces);

?>