Rumah >rangka kerja php >YII >Bagaimana saya membuat dan menggunakan pembantu pandangan tersuai di yii?
Mewujudkan dan menggunakan pembantu pandangan tersuai dalam YII dengan ketara meningkatkan organisasi kod dan kebolehgunaan semula. Pembantu pandangan pada dasarnya adalah fungsi yang boleh diguna semula yang memudahkan penjanaan HTML atau output lain dalam pandangan anda. Inilah cara membuat dan menggunakannya:
Pertama, buat fail PHP baru dalam direktori components
aplikasi anda (atau lokasi yang sama sesuai yang anda tentukan untuk komponen yang boleh diguna semula). Mari namakannya MyHelper.php
. Di dalam fail ini, tentukan kelas yang memanjangkan yii\base\BaseObject
:
<code class="php"><?php namespace app\components; use yii\base\BaseObject; class MyHelper extends BaseObject { public static function formatDate($date, $format = 'Ym-d') { return date($format, strtotime($date)); } }</code></code>
Format pembantu mudah ini tarikh mengikut format yang ditentukan. Untuk menggunakannya dalam pandangan anda, anda perlu mendaftarkannya. Anda boleh melakukan ini dalam kaedah action
pengawal anda, atau di seluruh dunia dalam konfigurasi aplikasi anda ( config/web.php
atau config/console.php
):
<code class="php">// In your controller: use app\components\MyHelper; public function actionIndex() { Yii::$app->view->registerObject('myHelper', new MyHelper()); // ... your view code ... } // Or, globally in config/web.php: 'components' => [ 'view' => [ 'class' => 'yii\web\View', 'registeredObject' => [ 'myHelper' => ['class' => 'app\components\MyHelper'] ], ], ],</code>
Sekarang, pada pandangan anda, anda boleh mengakses pembantu seperti ini:
<code class="php">= $myHelper->formatDate('2024-03-15', 'F j, Y') ?></code>
Ini akan mengeluarkan "15 Mac, 2024". Ingatlah untuk menyesuaikan ruang nama mengikut struktur aplikasi anda.
Menguruskan pembantu pandangan tersuai dengan berkesan adalah penting untuk mengekalkan dan berskala. Berikut adalah beberapa amalan terbaik:
components
atau helpers
, dalam struktur aplikasi anda untuk menyimpan semua pembantu pandangan tersuai anda. Ini menjadikan mereka terpisah dari komponen aplikasi lain dan meningkatkan organisasi kod. Ya, anda boleh dengan mudah lulus parameter ke pembantu Lihat Yii tersuai anda. Seperti yang ditunjukkan dalam contoh formatDate
di atas, parameter diluluskan sebagai hujah kepada kaedah penolong. Penolong kemudian boleh menggunakan parameter ini untuk menghasilkan output yang sesuai.
Sebagai contoh, mari kita lanjutkan MyHelper
kami untuk memasukkan pembantu untuk mewujudkan pautan HTML:
<code class="php"><?php namespace app\components; use yii\base\BaseObject; class MyHelper extends BaseObject { // ... (formatDate method remains the same) ... public static function createLink($text, $url, $options = []) { return '<a href="' . $url . '" ' . Html::renderTagAttributes($options) . '>' . $text . ''; } }</code>
Pembantu createLink
ini menerima teks pautan, URL, dan pelbagai pilihan atribut HTML. Pada pandangan anda:
<code class="php">= $myHelper->createLink('Go to Google', 'https://www.google.com', ['target' => '_blank', 'class' => 'btn btn-primary']) ?></code>
YII Custom Lihat pembantu secara dramatik meningkatkan kebolehgunaan semula kod dan penyelenggaraan dalam beberapa cara:
Dengan mengikuti garis panduan ini, anda boleh memanfaatkan pembantu pandangan tersuai secara berkesan untuk membuat aplikasi YII yang lebih bersih, lebih dapat dipelihara, dan boleh diguna semula.
Atas ialah kandungan terperinci Bagaimana saya membuat dan menggunakan pembantu pandangan tersuai di yii?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!