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

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

WBOY
Release: 2016-06-06 20:10:14
Original
1308 people have browsed it

//定义是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>
Copy after login
Copy after login

}

//然后调用是在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>
Copy after login
Copy after login

}

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

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

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

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

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template