小部件
#小部件是在視圖中使用的可重複使用單元, 使用物件導向方式建立複雜和可配置使用者介面單元。 (推薦學習:yii框架)
例如,日期選擇器小工具可產生一個精緻的允許使用者選擇日期的日期選擇器, 你只需要在檢視中插入以下程式碼:
<?php use yii\jui\DatePicker; ?> <?= DatePicker::widget(['name' => 'date']) ?>
Yii提供許多優秀的小部件,例如active form,menu, jQuery UI widgets, Twitter Bootstrap widgets。接下來介紹小部件的基本知識,如果你想了解某個小部件請參考對應的類 API 文件。
使用小工具
小工具基本上在 views 中使用, 在視圖中可呼叫 yii\base\Widget::widget() 方法使用小工具。此方法使用 配置 陣列初始化小部件並傳回小部件渲染後的結果。
例如如下程式碼插入一個日期選擇器小部件,它配置為使用俄羅斯語, 輸入框內容為 $model 的 from_date 屬性值。
<?php use yii\jui\DatePicker; ?> <?= DatePicker::widget([ 'model' => $model, 'attribute' => 'from_date', 'language' => 'ru', 'dateFormat' => 'php:Y-m-d', ]) ?>
一些小工具可在 yii\base\Widget::begin() 和 yii\base\Widget::end() 呼叫中使用資料內容。
例如以下程式碼使用yii\widgets\ActiveForm 小工具產生一個登入表單, 小工具會在begin() 和end() 執行處分別產生ff9c23ada1bcecdd1a0fb5d5a0f18437 的開始標籤和結束標籤, 中間的任何程式碼也會被渲染。
<?php use yii\widgets\ActiveForm; use yii\helpers\Html; ?> <?php $form = ActiveForm::begin(['id' => 'login-form']); ?> <?= $form->field($model, 'username') ?> <?= $form->field($model, 'password')->passwordInput() ?> <div class="form-group"> <?= Html::submitButton('Login') ?> </div> <?php ActiveForm::end(); ?>
注意和呼叫 yii\base\Widget::widget() 傳回渲染結果不同, 呼叫 yii\base\Widget::begin() 方法傳回一個可組成小工具內容的小工具實例。
注意: 當呼叫 yii\base\Widget::end() 的時候,一些小元件會使用 輸出緩衝 來調整封閉的內容。因此,當呼叫 yii\base\Widget::begin() 和 yii\base\Widget::end() 時,最好在同一個視圖檔裡。不遵循這個規則可能會導致意外的輸出。
以上是yii框架的小部件怎麼使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!