承接 husam-awadhi/power-parser 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

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

husam-awadhi/power-parser

最新稳定版本:0.6.0

Composer 安装命令:

composer require husam-awadhi/power-parser

包简介

a powerful file parsing tool

README 文档

README

Actions Latest Stable Version PHP Version Require License Total Downloads

File parsing tool with a configured blueprint design with support for ods, xlsx, xls, xml, html, sylk, csv file types out-of-the-box.

Installation

Require PowerParser using Composer:

composer require husam-awadhi/power-parser

Usage

To parse a file you'll need to a Parser instance which can be done by using these 3 lines. which will return the parsed file data, ready for your magic! 🎇

try {
    $pp = new PowerParser();
    $parser = $pp->getParserBuilder(
                stream: 'path-to-blueprint.yml',
                file: 'path-to-file.ext'
        )->build();
    $parsedData = $parser->parse()->getAsArray();
} catch (Exception $e) {
    // hmm
}

Blueprint

Blueprint Basics

refer to example, Valid Blueprint

Version string

blueprint version. not yet utilized but will be used for backward compatibility.

Meta object

object contains meta data.

File object

object contains parsed file meta data.

Extension string

parsed file extension.

Name string

parsed file name. only used in the returned parsed file data.

Blueprint object array

array of main parameters to capture data in parsed file.

Name string

code of captured data, when returning the parsed as array this will be used as array key for the matched data.

Mandatory boolean

when true, parsing will throw an exception if data not matched in the parsed file.

Conditions objects array

rules and clauses for finding an element.

Column integers array

expected location, a column number in Excel or CSV file

is, isNot, anyOf, noneOf string [one only]

Used to match the condition with the given value. If you want to use null as a value, use "{null}", which will be converted in the BlueprintInterpreter.

Fields objects array

once a match has been found, any data defined here will be captured.

Name string

The name of the data found in the field. When returning the parsed data as an array, this will be used as the array key for the matched data.

Position integer

cell number in Excel or CSV files

Format format [optional]

formats applied to matched data, refer to Processors

Processors

processors has 2 types,

Casting

  1. bool-strict: true
    1. if value = true, 1, "true"
  2. bool: false,
    1. if value has a value and is not equal to true.
    2. If value is true, 1, or "true".
  3. int: PHP casting
  4. float: PHP casting

Example:

blueprint:
- fields:
      - name: cash
        position: 1
        type: int

Formatting

  1. money
  2. string length limits

Example:

blueprint:
- fields:
      - name: cash
        position: 1
        format: f%2 # input: 23.441 output: 23.44
      - name: cash
        position: 1
        format: s%5 # input: 'sweets' output: 'sweet'

License

PowerParser is an open-sourced software licensed under the MIT license.

统计信息

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

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: mit
  • 更新时间: 2023-02-16

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固