定制 desperado/xml-bundle 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

desperado/xml-bundle

最新稳定版本:0.1.7

Composer 安装命令:

composer require desperado/xml-bundle

包简介

Symfony XmlBundle

README 文档

README

Build Status SensioLabsInsight Latest Stable Version License Total Downloads

XML Builder/Reader Bundle for Symfony2

Installation

Using composer

Add desperado/xml-bundle to your composer.json file.

 "require": { "desperado/xml-bundle": "dev-master" }

The next thing you should do is install the bundle by executing the following command:

php composer.phar update desperado/xml-bundle 

Finally, add the bundle to the registerBundles function of the AppKernel class in the app/AppKernel.php file:

public function registerBundles() { $bundles = array( ... new Desperado\XmlBundle\DesperadoXmlBundle, ... ); 

Usage

DIC

  • XmlEditor: desperado_xml.model.xml_editor
  • XmlGenerator: desperado_xml.model.xml_generator
  • XmlReader: desperado_xml.model.xml_reader
  • XmlPrepare: desperado_xml.model.xml_prepare

Create xml from array

<?php use Desperado\XmlBundle\Model\XmlGenerator; $params = [ 'Request' => [ '@ns' => [ '0_xmlns' => ['prefix' => 'xsi', 'uri' => 'http//www.w3.org/2001/XMLSchema-instance'], '1_xmlns' => ['prefix' => 'xsd', 'uri' => 'http//www.w3.org/2001/XMLSchema'], ], '@attrib' => [ 'Id' => 100, 'Service' => 200, 'xmlns' => 'http://ekassir.com/ekassir/PaySystem/Server/eKassirV3Protocol' ], 'PaymentParameters' => [ '@attrib' => ['xmlns' => ''], 'Parameter' => [ '@attrib' => ['Name' => 'account'], '@value' => 'emptyAccount' ] ] ] ]; $xmlGenerator = new XmlGenerator; echo $xmlGenerator->generateFromArray($params);

prints:

<?xml version="1.0" encoding="UTF-8"?> <root xmlns:xsi="http//www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http//www.w3.org/2001/XMLSchema"> <Request xmlns="http://ekassir.com/ekassir/PaySystem/Server/eKassirV3Protocol" xmlns:xsi="http//www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http//www.w3.org/2001/XMLSchema" Id="100" Service="200" xsi:xmlns="" xsd:xmlns=""> <PaymentParameters xmlns=""> <Parameter Name="account">emptyAccount</Parameter> </PaymentParameters> </Request> </root>

Create XML without attributes, namespaces, etc.

<?php use Desperado\XmlBundle\Model\XmlPrepare; use Desperado\XmlBundle\Model\XmlGenerator; $params = [ 'Details' => [ 'PaymentParameters' => [ 'first_node' => 'first_node_value', 'second_node' => 'second_node_value' ] ] ]; $xmlPrepare = new XmlPrepare; $xmlGenerator = new XmlGenerator; echo $xmlGenerator->setRootName('request')->generateFromArray($xmlPrepare->prepareArrayBeforeToXmlConvert($params));

prints:

<?xml version="1.0" encoding="UTF-8"?> <request> <Details> <PaymentParameters> <first_node>first_node_value</first_node> <second_node>second_node_value</second_node> </PaymentParameters> </Details> </request>

Parse XML without attributes, namespaces, etc.

<?php use Desperado\XmlBundle\Model\XmlReader; $xmlString = '<?xml version="1.0" encoding="UTF-8"?>  <request>  <Details>  <PaymentParameters>  <first_node>first_node_value</first_node>  <second_node>second_node_value</second_node>  </PaymentParameters>  </Details>  </request>'; $xmlReader = new XmlReader; print_r($xmlReader->processConvert($xmlString));

prints:

Array ( [Details] => Array ( [PaymentParameters] => Array ( [first_node] => first_node_value [second_node] => second_node_value ) ) )

统计信息

  • 总下载量: 146.28k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 9
  • 点击次数: 0
  • 依赖项目数: 2
  • 推荐数: 1

GitHub 信息

  • Stars: 9
  • Watchers: 3
  • Forks: 11
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-01-04

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固