承接 mistralys/php-sprintf-parser 相关项目开发

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

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

mistralys/php-sprintf-parser

最新稳定版本:1.0.0-beta.1

Composer 安装命令:

composer require mistralys/php-sprintf-parser

包简介

Parser to find all sprintf format placeholders in a string, and get information on them.

README 文档

README

PHP-based parser class that can be used to find all format placeholders of the sprintf function in a string, and get information on them.

Requirements

  • PHP >= 7.4

Installation

Simply require the package via composer:

composer require php-sprintf-parser

Or add it to your composer.json manually:

{
  "require":{
    "mistralys/php-sprintf-parser": "^1.0"
  }
}

Usage

Parse texts with several placeholders

Finding all formatting placeholders in a given string can be done with the parseString() function.

use function Mistralys\SprintfParser\Functions\parseString;

$parser = parseString('The price of product %1$s has been set to %2$.2d EUR.');

$placeholders = $parser->getPlaceholders();

Each placeholder instance can then be used to access all relevant information on the placeholder's configuration, like its number (if any), precision, width, etc.

Parse individual formatting strings

Single placeholder format strings can also be parsed to retrieve information on the placeholder directly.

use function Mistralys\SprintfParser\Functions\parseFormat;

$placeholder = parseFormat('%1$.2d');

Access placeholder information

A placeholder gives access to all individual components of a format string. As the official PHP documentation for sprintf states, the format prototype looks like this:

%[argnum$][flags][width][.precision]specifier

The placeholder class allows easy access to each of these components. The following is a valid format for example, which uses all possible options.

use function Mistralys\SprintfParser\Functions\parseFormat;

$placeholder = parseFormat("%1$+-0'*4.3d");

$placeholder->getSpecifier(); // s
$placeholder->getNumber(); // 1
$placeholder->getWidth(); // 4
$placeholder->getPrecision(); // 3
$placeholder->getPaddingChar(); // *
$placeholder->hasPlusMinusPrefix(); // true
$placeholder->hasLeftJustification(); // true
$placeholder->hasOnlyZeroLeftPadding(); // true 

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2021-11-06