Home >Backend Development >PHP Tutorial >请问YII2的自定义组件应该放在什么位置,用什么文件名

请问YII2的自定义组件应该放在什么位置,用什么文件名

WBOY
WBOYOriginal
2016-06-06 20:10:141305browse

//定义是MyController.php
namespace appcomponents;
use yiibaseWidget;
use yiihelpersHtml;

class HelloWidget extends Widget
{

<code>public $message;

public function init()
{
    parent::init();
    if ($this->message === null) {
        $this->message = 'Hello World';
    }
}

public function run()
{
    return Html::encode($this->message);
}</code>

}

//然后调用是在view中
use appcomponentsHelloWidget;
?>
= HelloWidget::widget(['message' => 'Good morning']) ?>

//结果报错找不到组件
Class 'appcomponentsHelloWidget' not found

请问我定义是不是错了呀?

回复内容:

//定义是MyController.php
namespace appcomponents;
use yiibaseWidget;
use yiihelpersHtml;

class HelloWidget extends Widget
{

<code>public $message;

public function init()
{
    parent::init();
    if ($this->message === null) {
        $this->message = 'Hello World';
    }
}

public function run()
{
    return Html::encode($this->message);
}</code>

}

//然后调用是在view中
use appcomponentsHelloWidget;
?>
= HelloWidget::widget(['message' => 'Good morning']) ?>

//结果报错找不到组件
Class 'appcomponentsHelloWidget' not found

请问我定义是不是错了呀?

命名空间的问题
很少用app开始的明明空间,一般都是common/components;或者根据模块来,frontend backend

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn