php判断str字符串是否是xml格式数据的方法示例

yipeiwu_com6年前PHP代码库

本文实例讲述了php判断str字符串是否是xml格式数据的方法。分享给大家供大家参考,具体如下:

<?php
//自定义xml验证函数xml_parser()
function xml_parser($str){
    $xml_parser = xml_parser_create();
    if(!xml_parse($xml_parser,$str,true)){
      xml_parser_free($xml_parser);
      return false;
    }else {
      return (json_decode(json_encode(simplexml_load_string($str)),true));
    }
}
//应用示例:
$xmlstr=<<<ETO
<?xml version="1.0" encoding="UTF-8"?>
<books>
  <book>
    <author>Jack Herrington</author>
    <title>PHP Hacks</title>
    <publisher>O'Reilly</publisher>
  </book>
  <book>
    <author>Jack Herrington</author>
    <title>Podcasting Hacks</title>
    <publisher>O'Reilly</publisher>
  </book>
  <book>
    <author>XML数据</author>
    <title>【宜配屋www.yipeiwu.com】</title>
    <publisher>tools.jb51.net</publisher>
  </book>
</books>
ETO;
$jsonstr='{ "tools": [ { "name":"css format" , "site":"http://tools.jb51.net/code/css" }, { "name":"json format" , "site":"http://tools.jb51.net/code/json" }, { "name":"pwd check" , "site":"http://tools.jb51.net/password/my_password_safe" } ] }';
if(xml_parser($xmlstr)){
 echo "\$xmlstr是xml格式数据";
}else{
 echo "\$xmlstr不是xml格式数据";
}
echo "<br/>";
if(xml_parser($jsonstr)){
 echo "\$jsonstr是xml格式数据";
}else{
 echo "\$jsonstr不是xml格式数据";
}
?>

运行结果:

$xmlstr是xml格式数据
$jsonstr不是xml格式数据

PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

在线格式化XML/在线压缩XML
http://tools.jb51.net/code/xmlformat

XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress

XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP针对XML文件操作技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

PHP使用file_get_content设置头信息的方法

本文实例讲述了PHP使用file_get_content设置头信息的方法。分享给大家供大家参考,具体如下: 直接上代码: <?php /** Accept applic...

PHP SPL 被遗落的宝石【SPL应用浅析】

PHP SPL 被遗落的宝石【SPL应用浅析】

本文实例讲述了PHP SPL应用方法。分享给大家供大家参考,具体如下: Rafael Dohms 上面的篇文章 让我为之惊艳,忍不住就翻译了下来,同时补充了部分内容。 SPL,PHP 标...

PHP的Trait机制原理与用法分析

本文实例讲述了PHP的Trait机制原理与用法。分享给大家供大家参考,具体如下: Trait介绍: 1、自PHP5.4起,PHP实现了一种代码复用的方法,称为trait。 2、Trait...

php堆排序实现原理与应用方法

本文实例讲述了php堆排序实现原理与应用方法。分享给大家供大家参考。具体分析如下: 这里以php作为描述语言较详细讲解堆排序原理,因保证程序可读性,故不做优化,php程序中关于堆的一些概...

PHP连接SQLServer2005的方法

PHP连接SQLServer2005的方法

1.修改php.ini将extension=php_mssql.dll的注释删除保存。 修改php.in将mssql.secure_connection = Off改为mssql.sec...