【问题标题】:PHP strict standard error in simple Joomla module?简单Joomla模块中的PHP严格标准错误?
【发布时间】:2012-08-08 12:59:25
【问题描述】:

我正在做一个关于 joomla 模块的教程,但是我遇到了一个严格的 PHP 标准错误。

错误:

严格标准:非静态方法 modReviewsHelper::getReviews() 不应该被静态调用 C:\wamp\www\Joomla_2.5\modules\mod_reviews\mod_reviews.php 在第 7 行 调用栈

mod_reviews.php

<?php

defined('_JEXEC')or die('Restricted access here?');

require_once(dirname(__FILE__).DS.'helper.php');

$reviews = modReviewsHelper::getReviews($params);

require(JModuleHelper::getLayoutPath('mod_reviews'));
?>

helper.php

<?php
class modReviewsHelper{

    function getReviews( $params ){
        return 'I am a happy user!';
    }
}
?>

tmpl/default.php

<?php
defined('_JEXEC')or die('Restricted access here?');
echo $reviews;
?>

我该如何解决这个问题并确保将来不会发生这种情况?

【问题讨论】:

  • “非静态方法不应该被静态调用”意味着你应该将该方法标记为static,如果你这样调用它。

标签: php joomla


【解决方案1】:
<?php
class modReviewsHelper{

    static function getReviews( $params ){
        return 'I am a happy user!';
    }
}
?>

【讨论】:

    【解决方案2】:

    在 joomla 中转到后端
    1) 点击管理员 -> 全局配置
    2) 转到 服务器 标签
    3) 报错:服务器设置中的“NONE” :-)

    【讨论】:

      猜你喜欢
      • 2013-09-15
      • 2016-12-11
      • 2016-12-11
      • 2023-03-19
      • 2013-12-10
      • 2013-11-27
      • 2023-03-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多