【问题标题】:Share Code between multiple PHP sites在多个 PHP 站点之间共享代码
【发布时间】:2011-04-14 11:40:07
【问题描述】:

晚上好。我发现一些问题似乎与我所问的问题相同,但似乎没有一个答案对我有用。基本上,我有一些通用的 PHP 文件(主要是类,但有些不是),我希望它们可以被多个 PHP 站点使用。

这是我的文件夹结构示例:

站点 A 根 C:\个人\网站\站点A

站点 B 根目录 C:\个人\网站\站点B

共享代码 C:\个人\网站\共享

从站点 A 我尝试使用 include("../Shared/foo.php") 来访问文件,但这不起作用。我有一种感觉,这是由于该文件夹超出了 SiteA 的站点根文件夹。有没有办法简单地包含共享目录中的文件?我无法想象这是一种不常见的做法,但我就是想不通。

顺便说一句,如果这很重要,我正在 Windows 7 上通过 IIS(通过 FastCGI)使用 PHP 5.2.14。最终,我会将这些网站迁移到 Linux/Apache 托管,因此我希望任何解决方案都可以使用。

谢谢!!

【问题讨论】:

    标签: php web-applications web


    【解决方案1】:

    在您的 php.ini 中,您可以将目录添加到 include_path,它们会包含从那时起的文件。

    "C:\Personal\Websites\Shared;"
    

    如果您将这样的字符串附加到已经存在的include_path,您可以执行include 'specialDir\Class.php' wherespecialDiris a directory inShared`。

    【讨论】:

    • 这是完美的。像魅力一样工作!谢谢!
    【解决方案2】:

    您最好的选择是在您希望的任何位置设置一个目录(例如 C:\Personal\Shared),然后编辑您的 php.ini include_path 以将此目录添加为包含路径。确保您正确设置权限,以便 IIS 允许您访问此目录(我不是 100% 知道如何在 Windows 上做到这一点,但它应该很容易)。

    那么您需要做的就是将文件包含在同一个目录中(PHP 会为您搜索包含目录)。

    例如,如果您有 C:\Personal\Shared\foo.php,您可以像这样包含它:

    include("foo.php");
    

    【讨论】:

    • 很好的答案,但 meder 几乎没有击败你。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多