corncodecreations / line-dumper
显示并按行比较字符串。
v1.0.0
2024-08-04 15:16 UTC
Requires
- php: >=8.0
Requires (Dev)
- phpunit/phpunit: ^11.3
- symfony/var-dumper: ^7.1
README
显示并按行比较字符串。
摘要
这个PHP类 LineDumper
提供了一个按行比较两个字符串并突出显示它们之间差异的工具。
-
如果字符串相同,它将简单地返回 "字符串相等!"。
-
如果它们不同,它将按行进行比较,使用ANSI转义码着色输出以指示不匹配。
详细信息
- 命名空间和类定义:该类在 CornCodeCreations 命名空间下定义。
- compareLines 方法
- 输入:它接受两个字符串,$expectedString 和 $actualString,分别代表预期输出和实际输出。
- 输出:它返回一个字符串,包含确认字符串相等或突出显示差异的按行比较。
- 字符串分割:使用 explode("\n", $string) 将字符串分割成行数组。
- 行号宽度:行号填充到3个字符的宽度。
- 比较:将预期字符串的每一行与实际字符串中相应的行进行比较。
- 如果行匹配,则输出它们并带有简单的 "ok" 状态。
- 如果不匹配,则输出预期行(待实现)为黄色,实际行(当前)为红色。
示例
输入
$expected = "This is a line.\nAnother line."; $actual = "This is a line.\nAnother different line."; $comparedLines = LineDumper::compareLines($expected, $actual); echo($comparedLines);
输出
Line 1| ok| This is a line. Line 2|to-be| Another line. Line 2|as-is| Another different line.
安装
$ composer require corncodecreations/line-dumper