whmcsexpert / symlink-detective
此软件包最新版本(1.0.1)没有可用的许可证信息。
库允许在通过符号链接文件尝试时确定脚本的实路径
1.0.1
2020-09-10 18:37 UTC
Requires
- webmozart/path-util: ~2.3
This package is not auto-updated.
Last update: 2024-09-21 10:12:20 UTC
README
嘿,这个库允许您从所有混乱中找到真实的路径,如果您在项目中的一些目录中使用了符号链接。只是一个例子
- 项目根目录:
/var/www/sites/your-project /var/www/sites/your-project/library指向/var/www/libs/library/var/www/sites/your-project/public包含 app.php 的目录指向/var/www/libs/frontend(因此/var/www/sites/your-project/public/app.php指向/var/www/libs/frontend/app.php)
如果库中(/var/www/libs/library)某处引用了某些路径,例如 library/../app/config.php
- 您的路径将是
/var/www/libs/library/../app/config==/var/www/libs/app/config,并且路径不存在。
但是有解决方案 - 您可以调用 SymlinkDetective::detectPath(__DIR__ . '/../app/config'),SymlinkDetective 将执行魔法
示例
SymlinkDetective::detectPath(__DIR__ . '/../app/config')返回/var/www/sites/your-project/app/configSymlinkDetective::detectPath(__FILE__, '/../app/config')返回/var/www/sites/your-project/app/configSymlinkDetective::detectPath(__FILE__, '/../app/unexistent-file', false)抛出异常,因为没有找到/不存在文件SymlinkDetective::detectPath(__DIR__ . '/../unexistent-file')返回/var/www/libs/library/unexistent-file,因为文件未找到,并且异常抛出被抑制(第三个参数)