maximal/tsv
Composer 安装命令:
composer require maximal/tsv
包简介
Library for working with the tab-separated values format (TSV).
README 文档
README
This is a small PHP library for working with the tab-separated values format (TSV) without any dependencies.
Installation
Install the library via Composer:
composer require maximal/tsv
Usage
require_once __DIR__ . '/vendor/autoload.php'; use Maximal\Tsv\Tsv; // Get TSV text for the given two-dimensional data table $tsvString = Tsv::getTsv($dataTable); // Every cell value in `Tsv::getTsv()` call will be cast to string using `(string)$value`. // Make sure all values are castable, e.g. all the classes have `__toString()` methods. // Get two-dimensional data table for the given TSV text $table = Tsv::getTable($tsvString);
Value escaping
This library uses the most common special characters escaping:
| Escape Sequence | Character |
|---|---|
\t |
tab |
\r |
carriage return |
\n |
line feed |
\\ |
backslash |
This works two-way: TSV → array → TSV conversion gives the initial TSV text.
Transitive Equivalence
Let’s review an example of chained table → TSV → table → TSV conversion:
// Initial two-dimensional data table $dataTable = [[/* ... */], [/* ... */], /* ... */]; // $dataTable is `array<array<mixed>>` // TSV text from the initial data $tsv = Tsv::getTsv($dataTable); // $tsv is `string` // Data table taken back from resulting TSV text $tableFromTsv = Tsv::getTable($tsv); // $tableFromTsv is `list<list<string>>` // TSV text again $tsvFromTable = Tsv::getTsv($dataTable); // $tsvFromTable is `string` // `$tsv === $tsvFromTable` equality is guaranteed // `$dataTable === $tsvFromTable` equality is NOT guaranteed
Here, $tsv text is guaranteed to be equal to $tsvFromTable:
both are strings and similarly formatted.
However, $dataTable is not guaranteed to be equal to $tableFromTsv
because the initial array can have various keys and different value types
(array<array<mixed>>) while the resulting array is strictly
a collection of list of strings (list<list<string>>).
Coding Style
PER-3T / PSR-12T (PHP’s standard PER-3 / PSR-12 with SmartTabs instead of spaces).
Author
maximal/tsv 适用场景与选型建议
maximal/tsv 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 5.35k 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 09 月 21 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「library」 「tsv」 「tab-separated values」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 maximal/tsv 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 maximal/tsv 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 maximal/tsv 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
Symfony Form Transformers
Quickly convert XLSX, XLS or delimited files such as CSV, TSV, Semi Colon, Pipe Delimited or files with any bespoke delimiter of your choosing to a delimited file.
CSV/TSV file/string generator
Simple PHP tool for parsing CSV or Excel spreadsheets
Inbox pattern process implementation for your Laravel Applications
Array to csv, tsv, ltsv, xml, json, ...
统计信息
- 总下载量: 5.35k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 25
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-09-21