gbuckingham89/valet-assistant

此包已被废弃且不再维护。未建议替代包。

一个Laravel包,用于在另一个Laravel应用程序中使用Laravel Valet - 例如获取Valet所服务的站点列表。

0.2.0 2022-01-05 20:56 UTC

This package is auto-updated.

Last update: 2024-04-06 02:00:38 UTC


README

Latest Version on Packagist GitHub Tests Action Status Total Downloads

一个Laravel包,用于在另一个Laravel应用程序中使用Laravel Valet - 例如获取Valet所服务的站点列表。

此包仅在安装了Laravel Valet的计算机上才能完全功能。

寻找Laravel Valet的UI?请查看gbuckingham89/valet-launchpad

安装

您可以通过composer安装此包

composer require gbuckingham89/valet-assistant

您可以使用以下命令发布Laravel配置文件

php artisan vendor:publish --tag="valet-assistant-config"

使用方法

使用Laravel容器以您认为最佳的方式解析Gbuckingham89\ValetAssistant\ValetAssistant的副本 - 例如依赖注入或通过app()->make()

还有一个Facade,Gbuckingham89\ValetAssistant\Facade\ValetAssistant,如果您愿意的话。

一旦您有了实例,您可以使用以下方法

获取由Laravel Valet服务的所有项目的列表

$valetSites = $valetAssistant()->projects();

这返回一个"Project"对象集合(代表您的本地机器上的目录)。每个项目将有一个或多个"Site"对象(代表项目服务的URL)。请查看源代码或在您的IDE中使用自动完成功能来了解更多关于数据结构的信息。

检查Valet是否已安装(并可访问)

$valetIsInstalled = $valetAssistant()->isInstalled();

这简单地返回一个布尔值,指示Valet是否已安装。

故障排除

Valet未安装

如果您看到有关Valet未安装的错误(但您确信它已安装,并且您从本地终端运行which valet时看到输出),那么很可能是运行您的PHP脚本的用户不知道Valet二进制文件的位置,或者没有权限运行它。

有两种方法可以解决这个问题;

  1. 通过在本地终端运行echo $PATH来查找您的shell的PATH环境变量的值。确保您已发布配置文件(见上文),然后在.env文件中添加一个条目,键为VALET_ASSISTANT_ENV_PATH,值为您的本地PATH。然后此PATH值将在此包执行shell命令时使用。它不会用于此包外的代码。
  2. /Users/[local-username]/.composer/vendor/bin添加到运行PHP脚本的用户的PATH环境变量中(请记住插入Valet安装下的用户名)

请自行研究并考虑通过PATH环境变量给予PHP访问额外目录的安全影响。

测试

您可以通过调用./vendor/bin/phpunitcomposer test来运行测试套件。

当运行测试套件时,您可能在终端输出中看到以下错误:..sh: which: command not found。这是一个已知问题,一个PR来解决这个问题当然会受到欢迎!

变更日志

请参阅CHANGELOG以获取有关最近更改的更多信息。

贡献

请参阅贡献指南以获取详细信息。

安全漏洞

请查看我们的安全策略,了解如何报告安全漏洞。

鸣谢

许可证

MIT许可证(MIT)。请参阅许可证文件以获取更多信息。