abdullahhafizh/laravel-formatter

此包的最新版本(1.0.6)没有可用的许可证信息。

一个格式化库,可以在XML、CSV、JSON、TXT、YAML等几种格式之间转换数据输出。

1.0.6 2022-08-05 08:47 UTC

This package is auto-updated.

Last update: 2024-09-05 13:08:45 UTC


README

  • 更新Laravel 6与phpunit 8的支持
  • 更新composer.json
  • 升级到PSR-4
  • 在导出CSV时添加参数换行符、分隔符、包围符和转义符
  • 在将XML转换为数组时,将@attributes转换为attribute
  • 在导出XML时添加参数编码和格式化
  • JSON解析修复(不仅仅将第一级转换为数组,而是使用关联数组参数与true,因此所有级别都将解码为数组结构)
  • 添加对Laravel 5的支持
  • 添加Laravel 5的包发现
  • 为CSV添加分隔符支持

格式化包

Build Status

一个格式化包,可以帮助您轻松地在各种格式之间转换,如XML、JSON、CSV等...

目标

此库的目标是允许将数据格式从一种类型转换为另一种类型。查看解析器和格式以查看支持的输入/输出格式。

安装

通过命令行

composer require abdullahhafizh/laravel-formatter

通过composer.json

{
  "require": {
    "abdullahhafizh/laravel-formatter": "2.x"
  }
}

解析器

以下所有格式都是格式化程序可以读取的格式。

  • 数组
  • CSV
  • JSON
  • XML
  • YAML

格式

以下所有格式都支持输出。

  • 数组
  • CSV
  • JSON
  • XML
  • YAML

通用用法

包含格式化程序

use Hafizh\Formatter\Formatter;

支持类型

Formatter::JSON; //json
Formatter::CSV;  //csv
Formatter::XML;  //xml
Formatter::ARR;  //array
Formatter::YAML; //yaml

制作您的第一个格式化程序

$formatter = Formatter::make($jsonString, Formatter::JSON);
$formatter = Formatter::make($yamlString, Formatter::YAML);
$formatter = Formatter::make($array, Formatter::ARR);
...

从格式化程序输出

$csv   = $formatter->toCsv();
$json  = $formatter->toJson();
$xml   = $formatter->toXml();
$array = $formatter->toArray();
$yaml  = $formatter->toYaml();

弃用功能

以下功能已被从库中弃用,但是您可以在应用程序中轻松继续使用它们

序列化数组

$serialized = serialize($formatter->toArray());

PHP导出

$export = var_export($formatter->toArray());