• 技术文章 >后端开发 >php教程

    PHP-xml & jsonp转数组的方法

    藏色散人藏色散人2019-12-07 18:01:45转载806
    一、xml转成数组,xml中包含<![CDATA[]]>标签

    /**
     * 将xml转换为数组
     * @param string $xml:xml文件或字符串
     * @return array
     */
    function xmlToArray($xml){
    //考虑到xml文档中可能会包含<![CDATA[]]>标签,第三个参数设置为LIBXML_NOCDATA
    if (file_exists($xml)) {
    libxml_disable_entity_loader(false);
    $xml_string = simplexml_load_file($xml,'SimpleXMLElement', LIBXML_NOCDATA);
    }else{
    libxml_disable_entity_loader(true);
    $xml_string = simplexml_load_string($xml,'SimpleXMLElement', LIBXML_NOCDATA);
    }
    $result = json_decode(json_encode($xml_string),true);
    return $result;
    }

    二、jsonp转换成数组

    /**
     * 把jsonp转为php数组
     * @param string $jsonp jsonp字符串
     * @param boolean $assoc 当该参数为true时,将返回array而非object
     * @return array
     */
    function jsonp_decode($jsonp, $assoc = false)
    {
        $jsonp = trim($jsonp);
        if(isset($jsonp[0]) && $jsonp[0] !== '[' && $jsonp[0] !== '{') {
            $begin = strpos($jsonp, '(');
            if(false !== $begin)
            {
                $end = strrpos($jsonp, ')');
                if(false !== $end)
                {
                    $jsonp = substr($jsonp, $begin + 1, $end - $begin - 1);
                }
            }
        }
        return json_decode($jsonp, $assoc);
    }

    相关推荐:《PHP教程

    以上就是PHP-xml & jsonp转数组的方法的详细内容,更多请关注php中文网其它相关文章!

    声明:本文转载于:csdn,如有侵犯,请联系admin@php.cn删除
    专题推荐:PHP
    上一篇:PHP获取字符串中字符、字符串第n次出现的位置 下一篇:PHP-Ajax实现异步上传图片到新浪图床
    线上培训班

    相关文章推荐

    • Javascript 到 PHP 加密通讯的简单实现• 用PHP做负载均衡指南• PHP-curl通过GET或POST方式实现http及https请求• PHP获取字符串中字符、字符串第n次出现的位置

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网