【发布时间】:2017-09-26 18:39:45
【问题描述】:
我需要它在不同的环境中工作,PEAR 可能安装在不同的位置;目前,我依靠include_path 来解决这个问题。然而,一个朴素的 PEAR 库包含是危险的:
include "Mail.php";
因为我可能在当前目录中有一个“Mail.php”(或“mail.php”* ...)库。我猜我可以在每个环境中设置一个常量(例如PEAR_PATH)并使用绝对路径,例如
include PEAR_PATH."/Mail.php";
这还有一个好处是可以指出 Mail.php 的来源!这是其他人使用的策略吗?理想情况下,我不会复制该值,但我想如果我只包含具有完整绝对路径的文件,那应该不是问题。
或者,我可以对 include_path 进行一些预先解析,确定文件在哪里......这基本上只是重新创建 include 的“搜索包含路径”行为,这看起来很傻!
* 我现在意识到这取决于文件系统的大小写敏感性;我的环境之一是 Mac。
【问题讨论】:
-
@Stuart 我看不到该页面如何回答我的问题...
-
你没看错!?它将帮助您发现 PEAR 的安装位置,以便您获得正确的路径。
-
是的。我没有看到从 PHP 确定 PEAR 安装位置的方法。你是在建议我做类似
exec("pear config-get php_dir")的事情吗?