【问题标题】:Including the SVN class in a PHP Project在 PHP 项目中包含 SVN 类
【发布时间】:2016-07-05 05:33:11
【问题描述】:

所以这可能有一个简单的答案,但我在任何地方都找不到。

我有以下代码:

function getSVN(){
    $svn = new SVN; 
    $log = $svn->log('https://svn.repo/trunk/', SVN::HEAD); 
}

不出所料,我收到以下错误:

致命错误:找不到类“SVN”

所以我尝试使用:

use SVN; 

但我得到了:

警告:非复合名称'SVN'的use语句无效

包含 PHP 的 SVN 类的正确方法是什么?

【问题讨论】:

  • 我假设您已经安装了适当的扩展并且它显示在启用模块的php -m 列表中?
  • @apokryfos 啊,我们走了。它没有出现。我将如何安装它?
  • php.net/manual/en/svn.installation.php 有一些说明。在使用 aptitude 的系统(例如 Ubuntu)上,您可以使用 sudo apt-get php5-svn 否则这取决于您的操作系统将如何安装这些扩展
  • 这里说明了一切php.net/manual/en/book.svn.php
  • @apokryfos 我遇到了一堆 Permission Denied 问题,所以我会努力解决这个问题。我相信你的解决方案是正确的,所以请随时回答,如果你愿意,我会标记为已解决。

标签: php class svn include


【解决方案1】:

虽然这个问题在我发布这个问题时已经有将近 3 年的历史了,但我想贡献我的解决方案,以帮助其他在 Redhat 风格的机器上遇到错误的人。

我能够通过 RPM 包安装成功安装它。以下链接可能会对您有所帮助,具体取决于操作系统和 PHP 版本。

www.rpmfind.net

centos.pkgs.org

我只是按照 CentOS 软件包中的说明和在 Redhat 6.9 PHP 5.6 服务器上安装的 php pecl-svn 扩展程序没有问题。希望同样适用于你。祝你好运。

【讨论】:

    【解决方案2】:

    SVN PHP 客户端需要加载一个额外的 PHP 扩展。

    http://php.net/manual/en/svn.installation.php 有一些通用安装说明,但真正的黄金在 cmets。

    Aptitude 系统(包括 Ubuntu)

    sudo apt-get php5-svn Aptitude 倾向于解决依赖关系,所以我们在这方面做得很好。

    Yellowdog 更新程序,修改 (yum) 系统

    yum install subversion subversion-devel neon neon-devel

    pecl install svn

    Windows

    如果可以找到,请下载 DLL。 Otherwise compile from source.

    适用于所有系统

    Compile from source

    完成所有这些后,您需要确保:

    1) php.ini 中有一个相关的条目可以启用此扩展:例如extension=svn.so(或 DLL) 2)有一个相关的配置.ini文件包含在php中(应该在phpinfo();中声明的路径)

    无论如何,扩展程序都需要出现在php -m 列表中

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-30
      相关资源
      最近更新 更多