ホームページ >PHPフレームワーク >YII >yiiフレームワークのウィジェットの使い方

yiiフレームワークのウィジェットの使い方

(*-*)浩
(*-*)浩オリジナル
2019-12-23 16:19:212268ブラウズ

yiiフレームワークのウィジェットの使い方

#ウィジェット

ウィジェットはビューで使用される再利用可能なユニットであり、オブジェクト指向の方法を使用して複雑なオブジェクトを作成します。構成可能なユーザー インターフェイス要素。 (推奨学習:

yii フレームワーク)

たとえば、日付ピッカー ウィジェットは、ユーザーが日付を選択できるようにする絶妙な日付ピッカーを生成できます。ビューに次のコードを挿入するだけで済みます。 :

<?php
use yii\jui\DatePicker;
?>
<?= DatePicker::widget([&#39;name&#39; => &#39;date&#39;]) ?>

Yii は、アクティブ フォーム、メニュー、jQuery UI ウィジェット、Twitter Bootstrap ウィジェットなど、多くの優れたウィジェットを提供します。次にウィジェットの基礎知識を紹介しますので、特定のウィジェットについて知りたい場合は、該当するクラスのAPIドキュメントを参照してください。

ウィジェットの使用

ウィジェットは基本的にビューで使用され、ビュー内で yii\base\Widget::widget() メソッドを呼び出してウィジェットを使用できます。このメソッドは、構成配列を使用してウィジェットを初期化し、レンダリングされたウィジェットの結果を返します。

たとえば、次のコードはロシア語を使用するように構成された日付ピッカー ウィジェットを挿入します。入力ボックスの内容は $model の from_date 属性値です。

<?php
use yii\jui\DatePicker;
?>
<?= DatePicker::widget([
    &#39;model&#39; => $model,
    &#39;attribute&#39; => &#39;from_date&#39;,
    &#39;language&#39; => &#39;ru&#39;,
    &#39;dateFormat&#39; => &#39;php:Y-m-d&#39;,
]) ?>

一部のウィジェットは、yii\base\Widget::begin() および yii\base\Widget::end() 呼び出しでデータ コンテンツを使用できます。

たとえば、次のコードは yii\widgets\ActiveForm ウィジェットを使用してログイン フォームを生成します。このウィジェットは、begin() と の実行位置に ff9c23ada1bcecdd1a0fb5d5a0f18437 の開始タグと終了タグを生成します。中央の任意のコードもレンダリングされます。

<?php
use yii\widgets\ActiveForm;
use yii\helpers\Html;
?>
<?php $form = ActiveForm::begin([&#39;id&#39; => &#39;login-form&#39;]); ?>
    <?= $form->field($model, &#39;username&#39;) ?>
    <?= $form->field($model, &#39;password&#39;)->passwordInput() ?>
    <div class="form-group">
        <?= Html::submitButton(&#39;Login&#39;) ?>
    </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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。