如何在yii2中使用自定义扩展/小部件?

如何在yii2中使用自定义扩展/小部件?

问题描述:

我使用gii在yii2.0中生成扩展名,这里是代码如何在yii2中使用自定义扩展/小部件?

namespace ms \ editor;

/** 
* This is just an example. 
*/ 
class AutoloadExample extends \yii\base\Widget 
{ 
    public function run() 
    { 
     return "Hello!"; 
    } 
} 
时,我想在我的视图文件使用它

use ms\editor\AutoloadExample; 
... 
<?= AutoloadExample::widget();?> 

我用yii2 baisic模板,我把“MS”文件夹中的“供应商”文件夹中,但它只是告诉我没有找到类ms \ editor \ AutoloadExample,我应该如何让yii2找到类?yii1.1中是否有类似“components”或“extension”文件夹的东西? 你能帮助我吗?

您的小部件应继承CWidget类并将小部件放置在组件中。

public class AutoloadExample extends CWidget 
{ 
    public function run() { } 
} 

然后,您可以在您的视图中像这样运行小部件;

$this->widget('application.components.AutoloadExample', array('your variables')); 
+0

在yii 2中它不起作用,它只能在yii 1中工作,谢谢你们一样。 – penn 2014-10-19 13:20:29

你会试试吗? 例如创建一个文件 “应用程序/前端/小工具/”

文件名:Deneme.php

<?php 

namespace frontend\widgets; 

class Deneme 
{ 

    static function yazdir() { 

    echo 'asd'; 

    } 

} 

使用;

use frontend\widgets\Deneme; 

Deneme::yazdir(); 
+0

我试过这个,但它也说“找不到类”。 – penn 2014-10-20 06:28:55

+0

你的yii 2是什么类型?高级还是基本? – Serhat 2014-10-20 11:22:44