Rumah > pembangunan bahagian belakang > tutorial php > Apa yang diharapkan dari Yii 2.0

Apa yang diharapkan dari Yii 2.0

Jennifer Aniston
Lepaskan: 2025-02-19 13:02:10
asal
646 orang telah melayarinya

Apa yang diharapkan dari Yii 2.0

Yii 2.0 dibebaskan ke beta April lalu dan matlamat untuk pelepasan stabil pertama ditetapkan untuk pertengahan tahun 2014. Senarai isu GitHub mempunyai 300 isu terbuka dan 2913 ditutup semasa saya menulis ini dan kedua -dua nombor masih meningkat . Kemajuan ke tonggak 2.0RC adalah 99%. Saya rasa bahawa pasukan itu dekat, tetapi kita mungkin perlu menunggu sedikit lebih lama. Walaupun kita semua menunggu, mari lihat apa yang boleh kita harapkan dengan melihat contoh yang sudah ada.

Takeaways Key

    Yii 2.0 memperkenalkan penambahbaikan dan perubahan yang ketara, termasuk penggunaan ruang nama, sifat, dan integrasi komposer, meningkatkan keupayaan kerangka PHP modennya.
  • Rangka kerja telah beralih dari rangka kerja CSS cetak biru ke Twitter Bootstrap, yang bukan sahaja mengubah estetika tetapi juga menyediakan komponen UI yang luas untuk pembangunan aplikasi pesat.
  • Pengendalian ralat di Yii 2.0 telah dirombak untuk menukar semua kesilapan kepada pengecualian, memberikan lebih banyak output bermaklumat dan meningkatkan proses debugging.
  • GII, alat penjanaan kod di YII, tetap penting dalam YII 2.0, kini menyokong penjanaan kod yang lebih baik untuk operasi CRUD dan pengantarabangsaan.
  • Yii 2.0 memerlukan PHP 5.4 atau lebih tinggi dan menggunakan ciri -ciri PHP yang maju, yang boleh menjejaskan keserasian dengan persekitaran pelayan yang lebih lama tetapi akhirnya menawarkan rangka kerja yang lebih mantap dan selamat.
  • sedikit sejarah
Versi pertama Yii menjadi popular agak cepat selepas ia dikeluarkan pada tahun 2008. Pengasasnya, Qiang Xue, yang sebelum ini bekerja di kerangka Prado dan pengalaman dan maklum balas yang digunakan untuk membina Yii.

Yii menggunakan banyak idea dari kerangka, bahasa dan perpustakaan lain: Prado, Ruby, JQuery, Symfony dan Joomla semuanya diakui sebagai sumber inspirasi.

yang pertama berkomitmen untuk YII 2.0 tarikh kembali ke 2011 tetapi pembangunan meningkat tahun lepas. Pasukan itu menulis semula dengan tujuan untuk menjadi keadaan kerangka PHP generasi baru seni. Ia mengamalkan teknologi dan ciri terkini, seperti komposer, PSR, ruang nama, sifat, dan banyak lagi.

Sesuatu yang patut disebutkan ialah mengikut halaman muat turun YII versi 1.1 sokongan akan berakhir pada 31 Disember 2015, jadi kami mendapat sedikit masa untuk mula berfikir tentang membuat peralihan.

Keperluan

Penggunaan ruang nama dan ciri -ciri meningkatkan keperluan kepada Php 5.4. Di samping itu, anda memerlukan sambungan MB_STRING, PDO dan INTL apabila anda mula membangun. Ini tidak sepatutnya menjadi masalah jika anda menjalankan pelayan anda sendiri, tetapi mungkin jika anda berada di persekitaran bersama. Sudah tentu, pada waktunya, isu itu akan hilang.

Pemasangan

Yii kini boleh dipasang dari komposer. Kami akan melalui kaedah pemasangan ini tidak lama lagi.

Pada masa ini, terdapat dua contoh aplikasi yang tersedia. Terdapat contoh asas yang mengandungi beberapa halaman, halaman kenalan dan halaman log masuk. Contoh lanjutan menambah depan dan backend berasingan, interaksi pangkalan data, pendaftaran dan pemulihan kata laluan.

Bermula

Saya akan mulakan dengan contoh asas. Jika anda telah melihat Yii sebelum ini, anda akan mengenali asas WebApp yang sama dengan Yii 1.1. Pasang contoh asas dengan komposer menggunakan arahan berikut:

composer.phar create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Anda kemudian boleh menyemak sama ada pelayan anda memenuhi keperluan dengan membuka http: //localhost/yii2-app-basic/requirements.php. Aplikasi sebenar kemudiannya akan dijalankan dari http: // localhost/yii2-app-basic/web/.

Ini adalah perkara penting yang pertama untuk diperhatikan: Ideanya ialah anda menetapkan akar dokumen permohonan anda ke/jalan/ke/aplikasi/web, sama seperti Symfony. Susun atur direktori berubah sedikit dari versi 1.1. Jika anda melihat dengan teliti, perubahan itu masuk akal dan akan meningkatkan keselamatan permohonan anda.

Sebelum ini, semua komponen aplikasi (model, pandangan, pengawal, rangka kerja dan perpustakaan vendor) akan hidup di bawah akar dokumen dalam folder yang dilindungi. Dengan cara itu keselamatan bergantung pada fail .htaccess untuk dihormati, yang bermaksud permohonan anda adalah 100% tidak selamat secara lalai pada Nginx. Menggerakkan semua komponen aplikasi dari akar dokumen menghalang pelayan web daripada menghantar komponen aplikasi anda kepada pengguna.

Anda mungkin mendapati diri anda mencari sumber kerangka sebenar. Rangka kerja ini adalah komponen yang dipasang menggunakan komposer, jadi ia akan tinggal di bawah direktori VendoryiisoftyII. Di sini anda akan mendapat lebih banyak lagi, tetapi buat masa ini, kami hanya akan meninggalkannya.

Buat masa ini, mari kita ubah konfigurasi pelayan web tempatan dan tetapkan root dokumen ke/path/to/application/web. Saya menambah virtualhost http: //yii2-app-basic.localhost/, tetapi lakukan seperti yang anda lihat sesuai untuk keadaan anda sendiri. Konfigurasi lalai ditetapkan untuk menyembunyikan fail skrip dalam URL. Jika anda menggunakan Apache, anda perlu menambah fail .htaccess ke direktori web untuk mengarahkan Apache untuk melakukan penulisan semula, ia tidak ada secara lalai.

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Lihat aplikasi asas Yii

Sekarang kita mempunyai aplikasi asas yang berjalan, beberapa tahniah teratur ...

Apa yang diharapkan dari Yii 2.0

Terima kasih! Tiada sains roket setakat ini.

Anda akan bermula dengan halaman Mula, halaman mengenai halaman, halaman kenalan dan halaman log masuk. Halaman kenalan dan borang log masuk mempunyai fungsi yang sama seperti sebelumnya; Kod CAPTCHA, Pengesahan Bentuk dan dua pengguna yang tersedia untuk log masuk. Pembalakan masuk sama seperti sebelumnya; dekat dengan apa -apa. Namun, ia adalah permulaan yang baik.

Reka bentuk aplikasi asas berubah secara dramatik. Sebelum ini, anda akan mendapat aplikasi yang dibina di atas kerangka CSS cetak biru sedangkan sekarang kita bermula dengan Twitter Bootstrap. Peningkatan? Ia mungkin dibandingkan dengan Rangka Tindakan, tetapi sekali lagi Bootstrap lebih banyak daripada Blueprint yang pernah dicuba.
Bootstrap akan memberi anda pelbagai komponen aplikasi dan akan mempercepat membina aplikasi. Sesetengah mungkin berhujah di sisi lain bahawa semua laman web kelihatan sama dengan bootstrap (tema hanya menetapkan ini sebahagiannya) dan ia juga akan menjadikan laman web anda lebih besar saiz. Sama ada cara, integrasi dengan YII 2.0 dilakukan dengan lanjutan YII2-Bootstrap. Ini menjadikannya sangat mudah untuk mengintegrasikan komponen bootstrap dalam pandangan anda.

Satu lagi perkara yang anda akan perhatikan ialah bar debug di bahagian bawah. Ia dipasang dan diaktifkan secara lalai, seperti dalam Symfony. Ia membolehkan akses cepat kepada banyak maklumat mengenai konfigurasi, permintaan dan pembalakan aplikasi anda. Ia akan menyimpan sejarah permintaan dengan maklumat debug juga.

Apa yang diharapkan dari Yii 2.0

Yii mengendalikan kesilapan yang berbeza daripada PHP biasanya. Yii menukarkan semua kesilapan (maut dan bukan maut) kepada pengecualian. Mereka dikendalikan dengan memberikan output berwawasan yang menunjuk anda ke arah titik di mana anda merosakkan atau kod anda menghasilkan notis. Malah, kesilapan menghuraikan, yang mana YII 1.1 akan kembali kepada kesilapan PHP asas, dapatkan gambaran keseluruhan kod anda. Ini adalah sesuatu yang kebanyakan kita akan menghargai.

Apa yang diharapkan dari Yii 2.0 GII juga hadir lagi dan diaktifkan secara lalai.

GII akan membantu anda dengan menjana kod untuk anda mulakan, satu lagi alat yang hebat untuk membantu mempercepat perkembangan anda. Ia akan menjana model dan pengawal untuk anda. Penjana CRUD akan pergi satu langkah lebih jauh dan menghasilkan set MVC lengkap untuk semua tindakan. GII juga akan menjana kod yang lebih sesuai untuk pengantarabangsaan (I18N) dengan segera memasukkan fungsi Yii :: T () di mana anda memerlukannya. Apa yang diharapkan dari Yii 2.0

Aplikasi asas sekarang juga dilengkapi dengan aplikasi baris arahan yang mudah yang boleh anda bina. Yii 1.1 sudah menyokong ini tetapi anda perlu mendapatkan contoh dari wiki.

Itulah yang anda dapati dalam aplikasi asas. Terdapat juga contoh aplikasi

maju

yang tersedia. Ia mempunyai struktur yang agak berbeza tetapi menambah lebih banyak fungsi untuk aplikasi anda keluar dari kotak:

Pengesahan Pengguna, Pengesahan dan Kata Laluan Pemulihan.

    Aplikasi berpecah menjadi depan dan backend.
  • Melanjutkan melihat versi asas, mari kita lihat lebih dekat dan menyelam ke dalam kod ...
  • Apa yang berubah?

    banyak telah berubah. Sesetengah perubahan mungkin mengelirukan anda pada mulanya, tetapi saya mendapati kebanyakan perubahan masuk akal dan mudah diterima. Berikut adalah beberapa perubahan yang saya dapati menarik, menyeronokkan atau membingungkan.

    Keperluan PHP 5.4 membuat beberapa perubahan mungkin; Tag pendek array disediakan. Ia juga selamat untuk menggunakan tag pendek Echo dalam pandangan kerana itu tidak bergantung kepada tetapan konfigurasi lagi.

composer.phar create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Perubahan kecil, tetapi satu anda akan berjalan dengan pantas; Sebelum ini, anda akan menggunakan Yii :: App () untuk mengakses contoh aplikasi dan komponennya. Dalam Yii 2.0 ini berubah dari fungsi statik ke pembolehubah statik Yii :: $ App.

Fungsi Terjemahan Yii :: T () masih bersama kami. Ia mengarahkan Yii untuk menggunakan komponen i18n untuk menterjemahkan teks yang dibekalkan kepada bahasa semasa yang digunakan. Anda juga boleh mengarahkannya untuk menggantikan pembolehubah.

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Pemformatan dan penggayaan tempat letak telah diolah semula dengan serius membolehkan pilihan pemformatan lebih banyak. Beberapa contoh:

<span><span><?php
</span></span><span><span>$elements = array(1,2,3,4); //Yii 1.1
</span></span><span><span>$elements = [1,2,3,4]; //Yii 2.0
</span></span><span><span>?></span>
</span><span><span><?php echo $someVar; ?></span> //Yii 1.1
</span><span><span><?= $someVar ?></span> //always safe to use in Yii 2.0</span>
Salin selepas log masuk
Salin selepas log masuk

Kerana pemformatan pemegang tempat ini, DateTimeFormatter telah hilang:

<span><span><?php
</span></span><span><span>echo `Yii<span>::</span>t('app', 'Hello, {username}!', [
</span></span><span>  <span>'username' => $username,
</span></span><span><span>]);
</span></span><span><span>?></span></span>
Salin selepas log masuk

Fungsi ini dibekalkan oleh perpustakaan ICU. Dokumentasi Yii memanggil dokumentasi asal untuk ini: "agak misteri". Saya berani anda membacanya dan cuba memahaminya ... mari kita berharap dokumentasi Yii termasuk versi yang lebih mudah dibaca dalam masa.

Pengawal

Sebelum ini, AccessControl () akan menjadi fungsi pengawal anda jika anda ingin menggunakan fungsi kawalan akses YII. Dengan Yii 2.0, kawalan akses adalah sebahagian daripada tingkah laku pengawal ():

<span><span><?php
</span></span><span><span>echo <span>\Yii</span>::t('app', '{n, number} is spelled as {n, spellout}', ['n' => 81]);
</span></span><span><span>echo <span>\Yii</span>::t('app', 'You are {n, ordinal} in line, please hold.', ['n' => 3]); //Will echo "You are 3rd in line, please wait.".
</span></span><span><span>echo <span>\Yii</span>::t('app', 'There {n, plural, =0{are no cats} =1{is one cat} other{are # cats}}!', array(
</span></span><span>    <span>'n' => 14,
</span></span><span><span>));
</span></span><span><span>?></span></span>
Salin selepas log masuk

Ini hampir sama dengan cara di Yii 1.1.

Saya perhatikan bahawa kod contoh (bukan rangka kerja itu sendiri!) Hilang banyak docblocks dan mempunyai banyak komen @InheritDoc. Ini bukan apa yang anda harapkan dari contoh tetapi saya menganggap bahawa ini akan ditetapkan dalam masa.

Model

Model asas (sebelum ini cmodel) tidak banyak berubah. Senario kini membolehkan anda menukar penguatkuasaan peraturan pengesahan. Anda boleh mengubah apa yang perlu disahkan berdasarkan senario semasa anda (iaitu model dengan peraturan yang berbeza apabila digunakan dari depan atau belakang).

Activerecord yang diperolehi mengalami beberapa perubahan yang serius. Sintaks untuk mencari dengan Activerecord menjadi lebih seperti menulis pertanyaan kerana cdbcriteria hilang. Ia telah digantikan dengan ActiveQuery membuat maklumat mengambil lebih mudah:

<span><span><?php
</span></span><span><span>//Previously in Yii 1.1
</span></span><span><span>Yii<span>::</span>app()->dateFormatter->formatDateTime(time(), 'medium', 'medium');
</span></span><span>
</span><span><span>//In Yii 2.0
</span></span><span><span>echo <span>\Yii</span>::t('app', 'The date is {0, date, short}', time());    //uses the pre-defined 'short' notation (i18n save)
</span></span><span><span>echo <span>\Yii</span>::t('app', 'The date is {0, date, YYYY-MM-dd}', time()); //or define your own notation
</span></span><span><span>?></span></span>
Salin selepas log masuk

Definisi hubungan juga berubah secara dramatik. Mari kita ambil contoh laman web dengan blogger yang menyiarkan artikel di mana pengguna mengulas. Definisi hubungan untuk jadual penulis diterangkan di bawah. Saya akan mulakan dengan bagaimana ia kelihatan dalam Yii 1.1:

composer.phar create-project --prefer-dist --stability=dev yiisoft/yii2-app-basic
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Seperti yang anda lihat, anda akan menentukan semua hubungan rekod aktif dalam pelbagai besar. Dalam Yii 2.0, anda perlu menentukan kaedah getter yang mengembalikan objek ActiveQuery untuk semua hubungan tersebut. Anda perlu menggunakan kata kunci 'melalui' dalam hubungan dengan menentukan hubungan antara jadual perantara.

anda kini mempunyai dua pilihan untuk menentukan ini; Biasanya anda akan menggunakan kaedah VIA () dalam fungsi hubungan. Anda juga boleh menentukan hubungan menggunakan kaedah viatable () jika anda hanya memerlukan data dalam jadual selepas jadual pivot. Contoh yang sama seperti di atas tetapi sekarang untuk Yii 2.0:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
Salin selepas log masuk
Salin selepas log masuk
Salin selepas log masuk

Ini adalah contoh yang agak mudah. Mendefinisikan hubungan melalui fungsi getter yang mengembalikan objek aktifkan membolehkan lebih banyak lagi. Sebagai contoh, anda boleh menambah fungsi khusus yang membuat pertanyaan untuk jawatan yang mendapat> 50 komen dengan menambahkan panggilan di mana () dalam aktif yang dikembalikan.

Penambahan yang menarik adalah kemungkinan untuk menentukan hubungan silang DBMS. Anda boleh menentukan hubungan antara misalnya MySQL dan MongoDB atau Redis dan menggunakannya dalam aplikasi anda sebagai satu objek.

paparan

Perkara utama yang perlu diperhatikan ialah $ ini tidak merujuk kepada contoh pengawal lagi. Dalam pandangan, $ ini adalah contoh objek YiiWebview. Pengawal boleh diakses melalui $ ini-> konteks.

seperti yang saya katakan sebelum ini; Php 5.4 menjadikan tag echo pendek secara konsisten tersedia. Ini menjadikan pandangan yang terdiri daripada php campuran dan html lebih mudah dibaca;

<span><span><?php
</span></span><span><span>$elements = array(1,2,3,4); //Yii 1.1
</span></span><span><span>$elements = [1,2,3,4]; //Yii 2.0
</span></span><span><span>?></span>
</span><span><span><?php echo $someVar; ?></span> //Yii 1.1
</span><span><span><?= $someVar ?></span> //always safe to use in Yii 2.0</span>
Salin selepas log masuk
Salin selepas log masuk

fungsi () dan renderpartial () juga berubah. Sebelum ia echo output yang diberikan secara automatik dan anda perlu menambah parameter tambahan untuk mendapatkan output yang diberikan sebagai rentetan. Yii 2.0 akan sentiasa mengembalikan rentetan pada render ()-seperti panggilan menjadikannya lebih konsisten dengan cara widget berkelakuan.

menaik taraf dari Yii 1.1

Sekiranya anda mempertimbangkan untuk menaik taraf permohonan Yii 1.1 anda ke Yii 2.0 dalam masa?

Bruno Škvorc baru -baru ini menulis tentang kod warisan di sini di Sitepoint. Dia berpendapat bahawa penulisan semula yang boleh dilakukan dalam 2 bulan harus dipertimbangkan - terutama jika perisian yang anda gunakan adalah kritikal perniagaan. Saya bersetuju dengannya dan akan mencadangkan anda menganggapnya jika anda merasa serius tentang permohonan anda dan ingin mengekalkannya di luar akhir hayat YII 1.1. Tetapi seperti biasa; ia bergantung pada keadaan anda.

Terdapat halaman khas yang didedikasikan untuk menaik taraf Yii di laman web Yii. Masalah terbesar, buat masa ini, adalah sambungan anda. Jika anda bergantung pada banyak sambungan, anda akan mempunyai masa yang sukar kerana ia akan mengambil sedikit masa untuk masyarakat mengambil (semula) menulis sambungan untuk Yii 2.0. Sekiranya anda seorang pro yang sebenar, anda sudah tentu melihat dengan serius pada sambungan yang anda gunakan dan pertimbangkan (semula) menulisnya.

Manual Migrasi mempunyai seksyen mengenai menjalankan Yii 1.1 dan Yii 2.0 bersama -sama dalam aplikasi. Untuk projek -projek besar ini adalah cara yang baik untuk mewujudkan laluan penghijrahan yang selamat. Migrasi kod generik anda ke Yii 2.0 dan luangkan masa anda di bahagian yang lebih kompleks atau lanjutan yang diisi.

Kesimpulan

Melangkah ke arah panduan muktamad untuk Yii 2.0 mendapat saya lebih bersemangat untuk memulakan dengan Yii 2.0. Saya sudah terpaksa menghentikan diri saya daripada menggunakannya dalam projek baru kerana saya tidak dapat mengambil risiko masalah dengan kod pra-pengeluaran.

Kualiti dokumentasi untuk YII 2.0 bertambah baik dari YII 1.1. Saya mempunyai masa yang sukar untuk memikirkan perkara ketika saya memulakan dengan YII 1.1 beberapa tahun yang lalu dan saya rasa dokumentasi lebih luas daripada sebelumnya.

Adakah anda melihat Yii 2.0 sudah atau mungkin juga membina sesuatu dengannya? Tolong beritahu kami apa yang anda jumpa. Saya ingin mengetahui pengalaman anda!

soalan yang sering ditanya mengenai Yii 2.0

Apakah ciri -ciri baru dalam Yii 2.0 berbanding dengan versi terdahulu? Ia kini menyokong penggunaan ruang nama, yang menjadikan organisasi kod lebih mudah. Ia juga memperkenalkan sistem penghalaan baru yang lebih fleksibel dan berkuasa. Kelas Activerecord telah direka semula untuk menyokong lebih banyak jenis pangkalan data, termasuk pangkalan data NoSQL. Rangka kerja ini juga termasuk sokongan pembangunan API yang baru, menjadikannya lebih mudah untuk membina API. Di samping itu, Yii 2.0 telah meningkatkan ciri keselamatan, termasuk perlindungan CSRF terbina dalam (pemalsuan permintaan lintas tapak). Sokongan Pengantarabangsaan (I18N). Ia membolehkan anda menyimpan pelbagai terjemahan mesej yang sama dalam bahasa yang berbeza. Anda juga boleh memformat tarikh, nombor, dan mata wang mengikut tempat. Yii 2.0 juga menyokong bentuk jamak dan pemilihan mesej berdasarkan konteks.

Apakah debugger Yii 2.0 dan bagaimana ia berfungsi? aplikasi anda. Ia mengumpul dan memaparkan maklumat mengenai setiap permintaan yang dibuat untuk permohonan anda, termasuk pertanyaan SQL yang dilaksanakan, data permintaan dan tindak balas, dan data masa prestasi. Anda boleh mengakses maklumat ini melalui panel di bahagian bawah halaman aplikasi anda. , yang boleh dipasang menggunakan Pengurus Pakej Komposer. Setelah dipasang, anda boleh menggunakan sambungan ini seperti ciri-ciri terbina dalam Yii. Komuniti Yii telah membangunkan pelbagai sambungan yang menyediakan fungsi tambahan, seperti pengesahan pengguna, pengesahan bentuk, dan abstraksi pangkalan data.

Bagaimana YII 2.0 Mengendalikan Migrasi Pangkalan Data? Anda boleh membuat penghijrahan baru menggunakan perintah Yii Migrate/Create. Skrip penghijrahan akan mengandungi kaedah untuk memohon dan membalikkan penghijrahan. Anda kemudian boleh memohon penghijrahan menggunakan perintah Yii Migrate/Up. Ia termasuk sokongan untuk penghalaan, pemprosesan permintaan, pemformatan tindak balas, dan pengendalian ralat. Anda juga boleh menggunakan kelas ActiveController untuk menghasilkan tindakan CRUD (Buat, Baca, Kemas kini, Padam) dengan cepat untuk API anda. Sistem Pengesahan Borang. Anda boleh menentukan peraturan pengesahan untuk medan borang anda dalam kelas model. Apabila borang dikemukakan, YII secara automatik akan mengesahkan data input terhadap peraturan ini dan menghasilkan mesej ralat yang sesuai. . Ia menyokong kedua -dua nama pengguna/pengesahan kata laluan tradisional dan kaedah yang lebih moden seperti OAuth dan OpenID. Anda juga boleh melanjutkan model pengguna terbina dalam untuk menambah kaedah pengesahan anda sendiri.

Bagaimana YII 2.0 Mengendalikan pengendalian ralat dan pembalakan? Ia boleh menangkap dan mengendalikan kedua -dua kesilapan dan pengecualian PHP. Kesalahan boleh dilog masuk dalam format yang berbeza dan dihantar ke destinasi yang berbeza, seperti fail, e -mel, dan penyemak imbas. berdasarkan phpunit dan selenium. Ia menyokong kedua -dua ujian unit dan ujian fungsional. Anda boleh menulis kes ujian untuk menguji model, pandangan, dan pengawal anda. Rangka kerja ujian juga menyediakan kaedah untuk mensimulasikan input pengguna dan menyemak output.

Atas ialah kandungan terperinci Apa yang diharapkan dari Yii 2.0. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan