oohology/gitignorewriter

PHP 中编辑 .gitignore 文件的接口。

v1.1.0 2017-01-06 16:16 UTC

This package is not auto-updated.

Last update: 2024-09-14 20:15:01 UTC


README

PHP 中编辑 .gitignore 文件的接口

Build Status

基本用法

通常,您将打开一个 .gitignore 文件,使用 addbeforeafter 方法来追加或插入一些值,然后调用 save 方法来写入结果。

打开文件并添加值

use GitIgnoreWriter\GitIgnoreWriter;

$writer = new GitIgnoreWriter('../.gitignore');
$writer->add('.env');
$writer->save();

也支持流畅的接口

(new GitIgnoreWriter('../.gitignore'))
    ->add('setup.php')
    ->before('setup.php', 'install.php')
    ->save();

输出文件

有几种方法可以从源文件读取,进行一些更改,并将结果写入不同的输出文件。最终结果相同,因此请选择最适合您用例的方法

$writer = (new GitIgnoreWriter('.gitignore.example'))
	->setOutputPath('.gitignore');
// ...
$writer->save();

或者,也可以

$writer = (new GitIgnoreWriter('.gitignore.example'));
// ...
$writer->save('.gitignore');

使用 load() 方法

$writer = (new GitIgnoreWriter('.gitignore'))
	->load('.gitignore.example');
// ...
$writer->save();

添加和插入值

add 方法从文件当前位置开始追加行,默认为文件末尾。

$writer->add($value);

beforeafter 方法首先将当前位置移动到指定的行,然后从该位置开始插入行

$writer->before($find, $prependValue);
$writer->after($find, $appendValue);

addbeforeafter 方法可以接受多种格式的插入值

  • 单行字符串
  • 多行字符串
  • 字符串数组

更多示例

$writer->add('
    # You can write comments
    First/Line/Path

    # blank lines are retained as well
    Second/Line/Path
')->save();

$writer->add([
    'line1',
    'line2',
    'line3',
])->save();

手动定位

rewindseekeof 方法允许您手动将内部指针定位到文件的特定行。任何随后的 add 都会相对于该位置插入内容。

  • rewind:将指针设置到文件开头
  • seek:将指针设置到从 0 开始的特定行号
  • eof:将指针设置到文件末尾以追加

删除行

deletedeleteOffset 方法提供从文件中删除行的途径。请注意,删除后剩余的行将重新编号。

  • delete($value):从文件中删除匹配的行
  • deleteOffset($offset, $count = 1):从特定 0 基数行号开始删除一行或多行。

示例

$writer
    ->delete('working/')
    ->save();

$writer->deleteOffset(5, 2)->save();

检查行是否存在

exists 方法返回一个布尔值,以测试文件中是否存在行。

$result = $writer->exists('.env');