导航:首页 > 编程语言 > phpxml转字符串

phpxml转字符串

发布时间:2022-06-01 15:18:26

‘壹’ php 读取xml格式的字符串

$strXml='<?xml version="1.0" encoding="utf-8" ?><responses code="200" msg="time: 0ms 971us"><response>法国</response><response>德国</response><response>中国</response><response>英国</response><response>泰国</response><response>美国</response><response>韩国</response><response>西兰公国</response><response>中非共和国</response><response>韩国丽水-韩国</response></responses>';

$pos = strpos($strXml, 'xml');
if (!$pos) {
die("不是xml字符串!");
}
$obj=simplexml_load_string($strXml,'SimpleXMLElement', LIBXML_NOCDATA);
if(is_object($obj)){
$obj=get_object_vars($obj);
}

echo "<pre>";
print_r($obj);

另外记得文件一定要是utf-8编码,如果不是记得用iconv函数转一下。

‘贰’ php输出xml内容

PHP生成XML的方法很多,这里演示最基本,最简单的字符串构造法。就是使用字符串构造或者拼接成xml数据格式,然后输出或者生成xml文件。

<?php
$data=array(
array(
'title'=>'',
'country'=>'china',
'name'=>'网络',
),
array(
'title'=>'google',
'country'=>'usa',
'name'=>'谷歌',
)
);

//构造xml数据格式
$xml="<?xmlversion="1.0"encoding="utf-8"?> ";
$xml.="<data> ";
foreach($dataas$itm){
//循环构造xml单项
$item="<item> ";
$item.="<title>".$itm['title']."</title> ";
$item.="<country>".$itm['country']."</country> ";
$item.="<name>".$itm['name']."</name> ";
$item.="</item> ";
$xml.=$item;
}

$xml.="</data> ";

//输出xml数据
echo$xml;

?>

生成的数据格式如下:

‘叁’ php解析xml字符串

编写示例代码如下,经运行测试通过:

<?php
$xmlStr = <<<XML
<?xml version='1.0' encoding='UTF-8'?>
<ExportData>
<Body>
<Content>
<Id>1</Id>
<Name>Test01</Name>
<Point>40</Point>
</Content>
<Content>
<Id>2</Id>
<Name>Test02</Name>
<Point>80</Point>
</Content>
</Body>
</ExportData>
XML;

$xml = new SimpleXMLElement($xmlStr);
foreach($xml->Body->Content as $item){
echo 'ID: '.$item->Id."<br/>\n";
echo 'Name: '.$item->Name."<br/>\n";
echo 'Point: '.$item->Point."<br/><br/>\n";
}
?>

‘肆’ 如何将php返回的xml转换成json数据

如果你使用 curl 获取的 xml data
simplexml_load_string() 函数把 XML 字符串载入对象中。
$xml = simplexml_load_string($xmlStr);
$json = json_encode($xml);
如果是直接获取 URL 数据的话
$xml = simplexml_load_file($data);
$json = json_encode($xml);

‘伍’ php中将xml文件读入一个字符串

试试看:
$content = file_get_contents($file);
echo str_replace('<','&lt;',$content);

‘陆’ php把xml转换为字符串

楼主我教你吧,首先xml文件里的内容为

<?xmlversion="1.0"encoding="ISO-8859-1"?>
<content
<name>lishi</name>
<age>17</age>
</content>

读取xml文件内容

$str=file_get_contents($xml);$xml为xml文件路径地址


将读取的字符串内容转化为xml对象

$obj=simplexml_load_string($str)


操作对象里的数据

$obj->name="lishi111";

$obj->age=77;


拼接新的字符串

$strNew="<?xml version='1.0' encoding='ISO-8859-1'?>";

$str.="<content><name>".$obj->name."</name";

$str.="<age>".$obj->age."</age></content>";


将新的字符串写入xml文件

file_put_content($xml,$strNew);


最后一步拿分来吧,哈哈哈哈。有问题继续。。。

‘柒’ php 如何解析xml格式字符串

//假设xml字符串
$postStr = '<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[FromUser]]></FromUserName><CreateTime>123456789</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[p1]]></Content></xml>';
$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
var_mp($postObj);

/**
object(SimpleXMLElement)[16] public 'ToUserName' => string 'toUser' (length=6) public 'FromUserName' => string 'FromUser' (length=8) public 'CreateTime' => string '123456789' (length=9) public 'MsgType' => string 'text' (length=4) public 'Content' => string 'p1' (length=2)
*/
//把xml字符串解析为对象

‘捌’ php如何通过xml传递数据

获取request中body的字符串数据,比如一个数组转成xml后,你用post方式给服务器发送xml的字符串,服务器就用file_get_contents('php://input') 去读取xml格式 然后转成数组即可

‘玖’ php将XML转换成字符串!

$str = $xml->asXML();

$str就是你要的字符串

‘拾’ php 执行操作XML文件错误..字符串转XML

试了一下,可以正常解析了,可能是你的XML文本中有不可见的回车符之类.
你把你贴出来的代码复制成一个新的.php文件,再试试看.

阅读全文

与phpxml转字符串相关的资料

热点内容
我的世设置命令方块会闪退 浏览:968
加密媒体怎么输密码 浏览:161
方舟如何删除服务器数据 浏览:600
用阅读app怎么看18 浏览:689
gn文件编译 浏览:783
酷闪加密系统 浏览:820
区块链数据加密 浏览:389
3d命令集 浏览:289
单片机的智能产品工厂里有 浏览:300
事业单位程序员有必要去吗 浏览:583
人工智能训练小鸟python 浏览:132
怎样把两个pdf合并成一个 浏览:681
什么app带仿制图章 浏览:420
单片机CJNE什么意思 浏览:569
廊坊服务器是什么 浏览:763
客户解压要打欠条还是收据 浏览:774
通过app组件启动有什么坏处 浏览:777
不属于国产密码算法 浏览:863
单片机LED显示字库 浏览:355
日本文件夹品牌十大名牌 浏览:397