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

溫馨提示×

溫馨提示×

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

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

yii2擴展和自定義函數組件及模塊是怎樣的

發布時間:2021-10-20 16:58:13 來源:億速云 閱讀:116 作者:柒染 欄目:大數據

yii2擴展和自定義函數組件及模塊是怎樣的,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

自定義輔助函數
入口文件加載
目錄下創建一個helpers目錄下創建functions.php 文件
<?php

if (! function_exists('hello')) {
    function hello(){
        echo 'hello word';
    }
}

修改項目入口文件index.php

新增如下代碼:

require(__DIR__ . '/../helpers/functions.php');

composer中設置加載(推薦)

在 composer.json 文件里面添加如下代碼:

"autoload": {
    "files": [  
        "common/components/functions.php"
    ]
},
添加完之后,在common/components下添加文件functions.php,項目根目錄下執行 composer update
ok!

自定義component 組件

在app\components下新建NewComponent.php


namespace app\components;  
use Yii;  
use yii\base\Component;  
use yii\base\InvalidConfigException;  
   
class NewComponent extends Component
{  
 public function hello()  
 {  
  echo "hello world";  
 }  
   
}  
 main.php配置文件中
'components' => [  
   
         'testcomponent' => [  
   
            'class' => 'app\components\MyComponent',  
   
            ],  
]  

下面就可以愉快的使用 組件了是不是很簡單 !

Yii::$app->testcomponent->hello();  


自定義Modules 模塊
以下參考yii2.0 權威指南

新建一個如下目錄
forum/
    Module.php                   模塊類文件
    controllers/                 包含控制器類文件
        DefaultController.php    default 控制器類文件
    models/                      包含模型類文件
    views/                       包含控制器視圖文件和布局文件
        layouts/                 包含布局文件
        default/                 包含DefaultController控制器視圖文件
            index.php            index視圖文件

Module.php 代碼如下

namespace app\modules\forum;

class Module extends \yii\base\Module
{
    public function init()
    {
        parent::init();


        $this->params['foo'] = 'bar';
        // ...  其他初始化代碼 ...
    }
}

如果 init() 方法包含很多初始化模塊屬性代碼, 可將他們保存在配置 并在init()中使用以下代碼加載:
public function init()
{
    parent::init();
    // 從config.php加載配置來初始化模塊
    \Yii::configure($this, require(__DIR__ . '/config.php'));
}
config.php配置文件可能包含以下內容,類似應用主體配置.
<?php
return [
    'components' => [
        // list of component configurations
    ],
    'params' => [
        // list of parameters
    ],
];

使用模塊
要在應用中使用模塊,只需要將模塊加入到應用主體配置的yii\base\Application::modules屬性的列表中, 如下代碼的應用主體配置 使用 forum 模塊:
[
    'modules' => [
        'forum' => [
            'class' => 'app\modules\forum\Module',
            // ... 模塊其他配置 ...
        ],
    ],
]

訪問路由
forum/post/index 代表模塊中 post 控制器的 index 操作

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

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

yii
AI

南城县| 贵港市| 静宁县| 济阳县| 廉江市| 平湖市| 珲春市| 剑阁县| 商丘市| 扶余县| 化隆| 石柱| 龙岩市| 体育| 咸丰县| 崇信县| 崇仁县| 绵阳市| 喀喇沁旗| 澄迈县| 广灵县| 东莞市| 田阳县| 宜川县| 麦盖提县| 通辽市| 龙井市| 电白县| 湘阴县| 内乡县| 邵阳县| 平湖市| 五寨县| 桃园县| 定日县| 浠水县| 安吉县| 乐业县| 应用必备| 马龙县| 都昌县|