①.自己拼,XML编码
php
header('Content-type:text/xml');
echo "book";
echo "PHP";
echo "namePHP程序开发范例宝典/name";
echo "/PHP";
echo "/book";
拼接的效果
$dsn="mysql:host=localhost;dbname=test";
try {
$pdo = new PDO($dsn,'root','passwowd'); //初始化一个PDO对象,就是创建了数据库连接对象$pdo
$query="select * from book"; ? //定义SQL语句
$result=$pdo-prepare($query); //准备查询语句
$result-execute(); ? ? ? //执行查询语句,并返回结果集
$arr='';
while($res=$result-fetch()){
}
} catch (PDOException $e) {
die ("Error!: ".$e-getMessage()."br");
!DOCTYPE html
html lang="en"
head
titlexml/title
/head
body
script
function check(){
var xhr=new XMLHttpRequest();
xhr.open('GET','xml.php');
xhr.onreadystatechange=function(){
console.log(xhr.responseText);
//初始化 DOM解析对象
var domParser = new DOMParser();
//字符串解码为对象
var xmlDoc = domParser.parseFromString(xhr.responseText,'text/xml');
//按标签名获取元素 返回数组
var elements = xmlDoc.getElementsByTagName('PHP');
//拼接html格式字符串
var str ='trthid/ththname/ththdate/ththprice/th/tr';
for (var i=0;ielements.length;i++){
var id=elements[i].getElementsByTagName('id')[0].firstChild.nodeValue;
var name=elements[i].getElementsByTagName('name')[0].firstChild.nodeValue;
var date=elements[i].getElementsByTagName('date')[0].firstChild.nodeValue;
var price=elements[i].getElementsByTagName('price')[0].firstChild.nodeValue;
str+= 'trtd'+id+'/tdtd'+name+'/tdtd'+date+'/tdtd'+price+'/td/tr';
};
xhr.send(null);
/script
button onclick="check();"点我/button
/table
/body
/html
效果
补充:
使用JSON
①.数据库查询,自己拼?JSON 编码
$pdo = new PDO($dsn,'root','password'); //初始化一个PDO对象,就是创建了数据库连接对象$pdo
$a=$arr='';
echo $a="[".substr($arr,0,strlen($arr)-1)."]";
$res=$result-fetchAll();
//JSON 编码
echo json_encode($res);
die ("Error!: ".$e-getMessage()."br/");
titleJSON/title
function check() {
var XHR = new XMLHttpRequest();
XHR.open('GET','JSON.php');
XHR.onreadystatechange = function (){
var books =JSON .parse(XHR.responseText);
for (var i=0;ibooks.length;i++){
XHR.send(null);
input type="button" value="点我" onclick="check();"
复制代码
代码如下:
function
{
return
preg_match('%^(?:
#
ASCII
|
non-overlong
excluding
overlongs
straight
surrogates
planes
plane
)*$%xs',
$string);
//
如果想深入研究,建议看下PHP手册上的"Multibyte
String
Functions"这一部分的内容.
echo?$encode;
可以用以上代码判断字符串格式,转码的话,使用iconv函数
Phpcms是国内领先的网站内容管理系统,同时也是一个开源的PHP开发框架.
编码问题是解码者决定的,数据本身并不指明编码方式,而是读数据的解码者选择自己的解码方式
此处,php程序是数据本身,php解释器是解码者本身,
php解释器对?php程序的编码方式?并不应人类对php程序的编码方式理解不同而转移
所以呢,理论上不存在获取当前数据编码方式的?接口,只要当时的编码者(譬如人类)显示指明编码方式,
解码者(譬如php解释器)方可获知
即使在解析以后再人类看来是一片乱码,?PHP认为一切都是正确的.
当然从前端获取来的字符例外
如果不清楚字符串的编码格式的话,就可以将这段字符这样检查:
这样就能知道它是什么编码的了.后续操作还可以为其转码: