91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

YII2.0之窗體小部件

發布時間:2020-08-06 10:21:36 來源:網絡 閱讀:609 作者:xtceetg 欄目:開發技術

    在工作中用到YII2框架,之前對Yii的Widgets這個不太理解,也就沒有用上。最近在查看YII2的英文指南的時候,終于弄明白了是怎么一回事。

    舉個簡單的例子,如果在做后臺開發的時候,大部分頁面都需要用到一個可選擇的列表(<select>),那么我們可以把它做成窗體小部件。

    具體看下面代碼:

    

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2017/2/14
 * Time: 18:01
 */

namespace common\widgets;


use common\service\GameService;
use yii\base\Widget;
use yii\helpers\ArrayHelper;

class GameWidget extends Widget
{

    private $list;

    private $html;

    public function init()
    {
        parent::init();
        $this->list = GameService::gameList(['id', 'gamename']);
        $array = ArrayHelper::toArray($this->list);
        $this->html = '<select data-am-selected="{btnSize: "sm"}">';
        foreach ($array as $key => $val) {
            $this->html .='<option value="'.$val['id'].'">'.$val['gamename'].'</option>';
        }
        $this->html.='</select>';
    }

    public function run()
    {
        return $this->html;
    }
}

新建一個類,并且繼承自yii\base\Widget。覆蓋init()和run()方法。init里面寫自己的邏輯,run里面返回需要在頁面上顯示的內容。

下面在看php模板頁面上的調用方法

<?php
use common\widgets\GameWidget;
?>
<?php echo GameWidget::widget()?>

引入自己編寫的Widget,然后調用widget()方法。

結果圖

YII2.0之窗體小部件

YII2.0之窗體小部件

YII2.0之窗體小部件

這里以后在其它頁面如果還需要這個部件,只接調用就可以了。不需要寫多的代碼。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

滨海县| 册亨县| 珠海市| 宁波市| 长沙县| 正镶白旗| 京山县| 双峰县| 清流县| 贺兰县| 西丰县| 曲沃县| 个旧市| 伊川县| 肥城市| 大化| 周口市| 公主岭市| 巴楚县| 桂阳县| 武定县| 广宗县| 镇康县| 靖州| 黄陵县| 房产| 四子王旗| 莱西市| 寿宁县| 岳西县| 靖宇县| 巴彦淖尔市| 安达市| 体育| 达州市| 商河县| 太湖县| 长宁区| 昂仁县| 缙云县| 大埔区|