【问题标题】:Phalcon framework setting up project to local xampp from bit bucketPhalcon 框架从位桶设置项目到本地 xampp
【发布时间】:2017-03-11 00:55:04
【问题描述】:

嗨,我已经克隆了项目文件,并且我已经在 xampp 中安装了 phalcon 框架的版本。我可以在 php 信息中看到 phalcon 已安装。

当我浏览项目时,我克服了这个问题,我该如何解决它。

致命错误:声明 Phalcon\Acl\Adapter\Database::allow($roleName, $resourceName, $access) 必须与 Phalcon\Acl\AdapterInterface::allow($roleName, $resourceName, $access, $func = NULL) 在 C:\xampp\htdocs\uvix1\uvix.co\common\incubator\Library\Phalcon\Acl\Adapter\Database.php 第 33 行

这是我的 database.php 代码:

<?php
    namespace Phalcon\Acl\Adapter;

    use Phalcon\Db;
    use Phalcon\Acl\Adapter;
    use Phalcon\Acl\AdapterInterface;
    use Phalcon\Acl\Exception;
    use Phalcon\Acl\Resource;
    use Phalcon\Acl;
    use Phalcon\Acl\Role;
    class Database extends Adapter implements AdapterInterface //this is line 33
    {
        protected $options;

【问题讨论】:

  • 错误提示您的方法Phalcon\Acl\Adapter\Database::allowPhalcon\Acl\AdapterInterface::allow 的参数不同。最后一个有第一个没有的参数$func
  • @Timothy 我该如何解决这个错误
  • 找到一个更稳定的孵化器版本,编辑 AdapterInterface 的 allow 方法签名以包含 $func = NULL 或编辑 Database 的 allow 方法将其排除,使其与接口匹配。
  • $func 被添加到 Phalcon 3.0 中的 allow 方法中。将您的孵化器更新到最新版本应该可以解决此问题
  • 更新孵化器,就是这样。

标签: php database configuration frameworks phalcon


【解决方案1】:

database.php 中的代码来自 Phalcon v2。您正在 XAMPP 设置中使用 Phalcon v3。
v2 和 v3 有很多 API 更改,而您遇到的错误正是由于这个原因。

这里有 2 个选项。

  1. 大量工作:升级所有代码以使其与 Phalcon v3 兼容。并将生产环境中的 Phalcon 版本升级到 Phalcon v3。

  2. 更简单的修复:将 XAMPP 上的 Phalcon 版本降级到 Phalcon v2。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-05
    • 2019-05-07
    • 2011-07-12
    • 2018-08-10
    • 2019-12-13
    • 2014-08-08
    相关资源
    最近更新 更多