littlesqx/php-watcher

当目录中的源代码发生变化时,自动重新启动PHP应用程序

v0.3.2 2019-10-17 09:23 UTC

This package is auto-updated.

Last update: 2024-09-17 19:57:18 UTC


README

Build Status

PHP-watcher通过在目录中检测到文件更改时自动重新启动应用程序来帮助开发长时间运行的PHP应用程序。

以下是它的外观

watcher screenshot

PHP-watcher不需要对您的代码或开发方法进行任何额外的更改。php-watcherphp的替代包装器,要使用PHP -watcher替换执行脚本时命令行中的php

安装

您可以通过以下方式全局安装此包

composer global require littlesqx/php-watcher

之后,phpunit-watcher watch可以在系统上的任何目录中运行。

或者,您可以将包作为项目的开发依赖项本地安装

composer require littlesqx/php-watcher --dev

本地安装后,您可以使用vendor/bin/php-watcher运行它。

使用方法

所有示例都假设您已全局安装了包。如果您选择本地安装,请将vendor/bin/添加到php-watcher提及的任何位置。

PHP-watcher包装您的应用程序,因此您可以传递所有通常传递给应用程序的参数

php-watcher [your php app]

使用PHP-Watcher很简单。如果您的应用程序接受主机和端口作为参数,我可以用选项--arguments启动它

php-watcher server.php --arguments localhost --arguments 8080

此脚本的所有输出都带有前缀[php-watcher],否则应用程序的所有输出(包括错误),都将按预期回显输出。

配置文件

PHP-Watcher支持使用配置文件自定义其行为。选项文件可以命名为.php-watcher.ymlphp-watcher.ymlphp -watcher.yml.dist。工具将按此顺序在当前工作目录中查找文件。可以使用--config <file>选项指定替代本地配置文件。

具体性如下,因此命令行参数将始终覆盖配置文件设置

  • 命令行参数
  • 本地配置

配置文件可以采用任何命令行参数,例如

watch:
  - src
  - config
extensions:
  - php
  - yml
ignore:
  - tests

监控多个目录

默认情况下,PHP-Watcher监控当前工作目录。如果您想控制此选项,请使用--watch选项添加特定路径

php-watcher --watch src --watch config server.php

现在,PHP-Watcher只有在./src./config 目录中发生更改时才会重新启动。默认情况下遍历子目录,因此不需要显式包含它们。

指定扩展监控列表

默认情况下,PHP-Watcher查找具有.php扩展的文件。如果您使用--ext选项并监控app,yml,PHP-Watcher将监控扩展为.php.yml的文件

php-watcher server.php --ext=php,js

现在,PHP-Watcher将在目录(或子目录)中的任何更改的文件(扩展为.php.yml)上重新启动。

忽略文件

默认情况下,PHP-Watcher仅在.php文件更改时重新启动。在某些情况下,您可能想忽略某些特定文件、目录或文件模式,以防止PHP-Watcher过早地重新启动您的应用程序。

这可以通过命令行完成

php-watcher server.php --ignore public/ --ignore tests/

也可以忽略特定文件

php-watcher server.php --ignore src/config.php

模式也可以被忽略(但请确保引用参数)

php-watcher server.php --ignore 'src/config/*.php'

请注意,默认情况下,PHP-Watcher忽略所有和VCS文件。

延迟重新启动

在某些情况下,你可能想等待多个文件发生变化。在检查新文件变化前的超时时间为1秒。如果你正在上传多个文件并且耗时数秒,这可能导致你的应用程序不必要地多次重启。

要添加额外的节流或延迟重启,请使用--delay选项

php-watcher server.php --delay 10 

为了更高的精度,请使用浮点数

php-watcher server.php --delay 2.5 

默认可执行文件

默认情况下,PHP-Watcher使用php bin可执行文件来运行你的脚本。如果你想提供自己的可执行文件,请使用--exec选项或在配置文件中使用executable参数。如果你正在使用多个PHP版本,这尤其有用。

executable: php

或使用CLI

php-watcher server.php --exec php7

许可证

MIT http://rem.mit-license.org

我该如何感谢你呢?

为什么不给这个GitHub仓库点个star呢?我很乐意得到关注!或者,你可以在PayPal上向我项目捐赠

用一些咖啡支持我(原作者:@seregazhuk)

谢谢!