PHP警告:缺少sfOutputEscaperGetterDecorator :: get()的参数1,调用

时间:2016-10-13 13:05:25

标签: php symfony-1.4

我正在为我的一个警告寻找解决方案。

系统信息:

  • 操作系统:FreeBSD
  • 引擎:nginx + php-fpm
  • CMS:Symfony 1.4

问题是,当我尝试在后端Symfony Home上列出数据时,我收到以下错误,数据无法显示原始数据(链接exp。到用户的帐户),但不能显示所有无法显示的内容。

  

[error] 7716#100111:* 1288在stderr中发送的FastCGI:“PHP消息:PHP警告:sfOutputEscaperGetterDecorator :: get()缺少参数1,在/ data / bin / cache / backend / prod / modules /中调用第2行的autoSfGuardUser / templates / _list_td_tabular.php,第45行的/data/bin/lib/symfony/escaper/sfOutputEscaperGetterDecorator.class.php中定义   PHP消息:PHP警告:array_key_exists():第1357行的/data/bin/lib/symfony/plugins/sfDoctrinePlugin/lib/vendor/doctrine/Doctrine/Record.php中的第一个参数应该是字符串或整数< / p>

文件:/data/bin/lib/symfony/escaper/sfOutputEscaperGetterDecorator.class.php

    <?php

    /*
     * This file is part of the symfony package.
     * (c) 2004-2006 Fabien Potencier <fabien.potencier@symfony-project.com>
     *
     * For the full copyright and license information, please view the LICENSE
     * file that was distributed with this source code.
     */

    /**
     * Abstract output escaping decorator class for "getter" objects.
     *
     * @see        sfOutputEscaper
     * @package    symfony
     * @subpackage view
     * @author     Mike Squire <mike@somosis.co.uk>
     * @version    SVN: $Id: sfOutputEscaperGetterDecorator.class.php 9047 2008-05-19 08:43:05Z FabianLange $
     */
    abstract class sfOutputEscaperGetterDecorator extends sfOutputEscaper
    {
      /**
       * Returns the raw, unescaped value associated with the key supplied.
       *
       * The key might be an index into an array or a value to be passed to the
       * decorated object's get() method.
       *
       * @param  string $key  The key to retrieve
       *
       * @return mixed The value
       */
      public abstract function getRaw($key);

      /**
       * Returns the escaped value associated with the key supplied.
       *
       * Typically (using this implementation) the raw value is obtained using the
       * {@link getRaw()} method, escaped and the result returned.
       *
       * @param  string $key             The key to retrieve
       * @param  string $escapingMethod  The escaping method (a PHP function) to use
       *
       * @return mixed The escaped value
       */
      public function get($key, $escapingMethod = null)
      {
        if (!$escapingMethod)
        {
          $escapingMethod = $this->escapingMethod;
        }

        return sfOutputEscaper::escape($escapingMethod, $this->getRaw($key));
      }
    }

1 个答案:

答案 0 :(得分:-1)

我发现了问题和解决方案。 问题在于preg_replace,我改变了它,就像这里描述的那样Symfony 1.4 deprecated function in php

但是在清理symfony缓存之前它不起作用。 我删除了文件夹缓存中的所有文件夹(文件夹和文件)(/ data / bin / cache)。

P.S。有用的是链接http://blog.jakoubek.cz/symfony-1-4-deprecated-e-modifier