area17/phptorch
Composer 安装命令:
composer require area17/phptorch
包简介
Torchlight helpers for php files
README 文档
README
PhpTorch is a package for documentation purposes. It uses nikic/php-parser to parse a php class, which can then be modified using highlighting actions.
The end result will be printed as code with torchlight annotations.
Example:
$highlighter = \A17\PhpTorch\Highlight::new('PageController.php') ->focusMethods('getForm') ->diffImports(\A17\Twill\Services\Forms\Fields\Medias::class) ->focusImports(\A17\Twill\Services\Forms\Fields\Medias::class) ->diffInMethod('getForm', 7, 9);
Then you can provide the output to torchlight which will result in:
Available methods
For now check the highlighter class public methods or consult the tests.
Todo
- Add support for non class files.
Examples
Direct usage
$highlighter = \A17\PhpTorch\Highlight::new('PageController.php') ->focusMethods('getForm') ->diffImports(\A17\Twill\Services\Forms\Fields\Medias::class) ->focusImports(\A17\Twill\Services\Forms\Fields\Medias::class) ->diffInMethod('getForm', 7, 9);
Jigsaw / markdown
If you want to use this in Jigsaw, you should require "torchlight/torchlight-jigsaw": "^0.3.4", in addition to this package.
Then you can start a code snippet with 3 backticks followed by phptorch like this:
\```phptorch { JSON } ##CODE## <?php ... \``` Linked file:
{ "file": "../../examples/blog/app/Models/Blog.php", "collapseAll": "", "focusProperties": [ "slugAttributes" ] } Inline code:
{ "collapseAll": "", "focusProperties": [ "slugAttributes" ], "diffMethods": [ { "methods": "someMethod", "addRemove": "remove" } ], "focusMethods": "someMethod" } ##CODE## <?php class Example { public bool $slugAttributes = false; public function someMethod(): void { } } class Foo { } 统计信息
- 总下载量: 14.33k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 3
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: Apache-2.0
- 更新时间: 2026-01-04
