xml学习笔记

<?php

$textTpl = '<xml>

            <Content><![CDATA[%s]]></Content>

            <news><![CDATA[%s]]></news>

            <FuncFlag><![CDATA[%s]]></FuncFlag>

            <body><![CDATA[addcon]]></body>

            </xml>';


// $xmlobj=SimpleXML()

 $postObj = simplexml_load_string($textTpl, 'SimpleXMLElement', LIBXML_NOCDATA);//装载xml,将xml封装成对象

 echo  $postObj->Content;//获取xml元素的值

$postObj->body[0]->addChild("date", "2016-01-01");//添加子节点

foreach ($postObj->body->children() as $child){

echo "Child node: " . $child;//输出新添加的子节点

}

//或者用echo $postObj->body->date;直接输出

//为xml元素赋值

$string="十进制为:%s,浮点型为:%f,字符串为:%s";

$number = "123";

$fnumber = "123.123";

$str = "qwee1231wqaqe3q";

$txt = sprintf($string,$number,$fnumber,$str);//sprintf把百分号(%)符号 替换成一个作为参数进行传递的变量 %s %f 为要用变量进行替换的参数

/*

sprintf中数据格式

%% - 返回一个百分号 %

%b - 二进制数

%c - ASCII 值对应的字符

%d - 包含正负号的十进制数(负数、0、正数)

%e - 使用小写的科学计数法(例如 1.2e+2)

%E - 使用大写的科学计数法(例如 1.2E+2)

%u - 不包含正负号的十进制数(大于等于 0)

%f - 浮点数(本地设置)

%F - 浮点数(非本地设置)

%g - 较短的 %e 和 %f

%G - 较短的 %E 和 %f

%o - 八进制数

%s - 字符串

%x - 十六进制数(小写字母)

%X - 十六进制数(大写字母

*/

$outstr=sprintf($textTpl,$number,$str,$fnumber);//将变量放入xml中

$postObj = simplexml_load_string($outstr, 'SimpleXMLElement', LIBXML_NOCDATA);//加载xml

echo $outstr;//输出整个xml文件

echo $postObj->FuncFlag;//获取xml中的值


你可能感兴趣的:(xml)