webdice/utilities

该软件包最新版本(dev-master)没有可用的许可证信息。

该仓库包含有用的类。本版本包含Curl\Request和Xml\Parser类,并附带示例代码。

dev-master 2016-05-16 15:35 UTC

This package is auto-updated.

Last update: 2024-09-06 09:14:10 UTC


README

此仓库包含一些有用的类,可以使您的工作变得更容易。目前包括cURL Request和Xml Parser/Writer类,并附带示例代码。

  • cURL 请求
  • XML 文件/字符串解析器/写入器

这个仓库是做什么用的?

  • 此仓库旨在提供一个易于使用的代码组,以简化通常不简单的操作。
  • 0.2.0

我如何设置环境?

  • 初始化,如果您还没有安装它,请安装或更新composer
  • 将curl_examples.php、curl_file_receive.php、xml_parser_example.php、test.jpg和test.xml文件复制到您的网站根目录,并运行
  • 打开您想要查看的示例文件(curl、xml)
  • 使用并享受

cURL 示例

  • 示例 GET 请求
#!php
$request = new Webdice\Utilities\Curl\Request('http://example.com' , array('returntransfer' => 1));
$request->get(array('something' => 'value', 'other' => 'value2'));
  • 示例 POST 请求
#!php
$request = new Webdice\Utilities\Curl\Request('http://posttestserver.com/post.php?dir=webdice' , array('returntransfer' => 1));
$request->post(array('something' => 'value', 'other' => 'value2'));
  • 示例带有文件上传的 POST 请求
#!php
$file = realpath('test.jpg');
$request = new Webdice\Utilities\Curl\Request('http://things.local/curl_file_receive.php' , array('safe_upload' => false));
$request->post(array('file' => '@' . $file,'post' => 'value'));
  • 示例自定义请求
#!php
$request = new Webdice\Utilities\Curl\Request('http://example.com' , array('returntransfer' => 1,'customrequest' => 'PUT'));
$request->send();

XML 解析器示例

  • 示例:解析 xml 文件
#!php
$parser = new \Webdice\Utilities\Xml\Parser('test.xml');
$arr = $parser->parse();
var_dump($arr);

  • 示例:直接解析 xml 内容

    #!php
    $parser = new \Webdice\Utilities\Xml\Parser();
    $arr = $parser->parseString('<root_element><items><item attributex="1">dsa</item></items></root_element>');
    var_dump($arr);
    
  • 示例:在解析方法之前更改返回数据键

    #!php
    $parser = new \Webdice\Utilities\Xml\Parser('test.xml');
    $parser->changeNodeConfig('element_name', 'children_elements', 'attributes');
    $arr = $parser->parse();
    var_dump($arr);
    
  • 示例:将解析响应格式更改为 JSON

    #!php
    parser = new \Webdice\Utilities\Xml\Parser();
    $parser->changeNodeConfig('element_name', 'children_elements', 'attributes');
    $arr = $parser->parse('test.xml', \Webdice\Utilities\Xml\Parser::TYPE_JSON);
    
  • 示例:从数组(递归地)写入 xml 文件

    #!php
    $parser = new \Webdice\Utilities\Xml\Parser();
    $content = $parser->toXml(array(
      array(
          'node' => 'valami',
          'value' => '',
          'children' => array(
              array(
                  'node' => 'valami1',
                  'value' => 'dsa',
                  'children' => array(
                      array(
                          'node' => 'valami2',
                          'value' => 'dsa1',
                          'children' => array(
                              array(
                                  'node' => 'valami3',
                                  'value' => 'dsa2',
                                  'attributes' => array(
                                      'dd3' => 7,
                                      'dd4' => 8
                                  )
                              ), array(
                                  'node' => 'valami4',
                                  'value' => 'dsa3',
                                  'attributes' => array(
                                      'dd3' => 9,
                                      'dd4' => 10
                                  )
                              ), array(
                                  'node' => 'valami5',
                                  'value' => 'dsa4',
                                  'attributes' => array(
                                      'dd3' => 11,
                                      'dd4' => 12
                                  )
                              ),
                          ), 
                          'attributes' => array(
                              'dd3' => 5,
                              'dd4' => 6
                          )
                      )
                  ), 
                  'attributes' => array(
                      'dd3' => 3,
                      'dd4' => 4
                  )
              )
          ), 
          'attributes' => array(
              'dd1' => 1,
              'dd2' => 2
          )
      )
    ), 'temp.xml');
    
### Who do I talk to? ###

* Repo owner or admin
* Write an email to <dombi.istvan@webdice.hu>