Yii ialah rangka kerja PHP berprestasi tinggi yang sesuai untuk membangunkan aplikasi WEB2.0.
Yii dilengkapi dengan set ciri yang kaya, termasuk MVC, DAO/ActiveRecord, I18N/L10N, caching, pengesahan dan kawalan akses berasaskan peranan, perancah, ujian, dsb., yang boleh memendekkan masa pembangunan dengan ketara
Tapak web rasmi: http://www.yiiframework.com/
Yii cepat
Yii hanya memuatkan ciri yang anda perlukan. Ia mempunyai sokongan caching yang kuat. Ia direka secara eksplisit untuk berfungsi dengan cekap dengan AJAX.
Yii Keselamatan
Yii selamat mengikut piawaiannya. Ia termasuk pengesahan input, penapisan output, suntikan SQL dan pencegahan skrip merentas tapak.
Profesional
Yii membantu anda membangunkan kod yang bersih dan boleh diguna semula. Ia mengikut corak MVC, memastikan pemisahan logik dan lapisan pembentangan yang jelas.
Rangka Kerja Yii ialah rangka kerja PHP berasaskan komponen dan berprestasi tinggi untuk membangunkan aplikasi web berskala besar. Yii menyediakan hampir semua yang diperlukan untuk pembangunan aplikasi Web 2.0 hari ini. Yii ialah salah satu rangka kerja PHP yang paling cekap. Yii adalah cetusan idea pengasas Xue Qiang dan memulakan pembangunan pada 1 Januari 2008.
Yii ialah rangka kerja PHP berasaskan komponen berprestasi tinggi untuk membangunkan aplikasi web berskala besar. Yii ditulis dalam OOP yang ketat dan mempunyai rujukan perpustakaan yang lengkap dan tutorial yang komprehensif. Daripada MVC, DAO/ActiveRecord, widget, caching, RBAC hierarki, perkhidmatan web, kepada tema, I18N dan L10N, Yii menyediakan hampir semua yang diperlukan untuk pembangunan aplikasi Web 2.0 hari ini. Malah, Yii ialah salah satu rangka kerja PHP yang paling cekap.
Yii ialah rangka kerja pembangunan aplikasi web PHP5 berprestasi tinggi. Alat baris arahan ringkas boleh membuat rangka kerja kod aplikasi web dengan cepat Pembangun boleh menambah logik perniagaan berdasarkan rangka kerja kod yang dijana untuk melengkapkan pembangunan aplikasi dengan cepat.
Kelebihan Yii
Yii mudah dipelajari dan digunakan. Anda hanya perlu mengetahui PHP dan pengaturcaraan berorientasikan objek, dan anda boleh bermula dengan cepat tanpa perlu mempelajari seni bina baharu atau bahasa templat terlebih dahulu.
Pembangunan dengan Yii adalah sangat pantas dan memerlukan pengekodan yang sangat sedikit untuk ditulis untuk aplikasi selain daripada rangka kerja itu sendiri. Malah ia adalah salah satu rangka kerja pembangunan yang paling cekap.
Yii sangat boleh digunakan semula dan boleh diperluaskan serta berorientasikan objek semata-mata. Segala-galanya dalam Yii ialah komponen yang boleh dikonfigurasikan secara bebas, boleh diguna semula dan boleh diperluaskan. Apa yang lebih penting ialah Yii mempunyai lebih banyak perpustakaan sambungan. Terdiri terutamanya daripada komponen sumbangan pengguna, ini boleh membantu mengurangkan masa pembangunan anda dengan ketara.
Yii kaya dengan ciri-ciri Dari MVC, DAO/ActiveRecord, kepada tema, pengantarabangsaan dan penyetempatan, Yii menyediakan hampir semua ciri yang diperlukan untuk pembangunan aplikasi Web 2.0 hari ini.
Manual Rujukan Yii ialah dokumentasi lengkap Yii, dengan semua maklumat yang anda perlukan untuk belajar dan menguasainya.
Yii telah direka dengan teliti dari awal untuk menampung pembangunan aplikasi WEB yang kompleks. Ia bukan hasil sampingan daripada beberapa projek atau penyepaduan pihak ketiga. Sebaliknya, ia adalah produk pengalaman pembangunan aplikasi web pengarang yang kaya dan idea-idea cemerlang rangka kerja dan aplikasi web popular yang lain.
Akhir sekali, tetapi tidak kurang pentingnya, Yii adalah percuma dan Yii mengikuti lesen BSD terkini. Ia memastikan pembangunan pihak ketiganya turut mengikuti lesen serasi BSD. Ini bermakna anda bebas menggunakan Yii untuk membangunkan mana-mana aplikasi sumber terbuka atau proprietari, dari segi undang-undang dan kewangan.
Ciri
Yii mempunyai hampir semua ciri pembangunan aplikasi Web 2.0 hari ini. Di bawah ialah senarai pendek ciri-ciri ini.
Corak reka bentuk Model-View-Controller (MVC): Yii menggunakan teknologi matang ini dalam pengaturcaraan WEB untuk memisahkan lapisan logik dan lapisan pembentangan dengan lebih baik.
Objek Akses Pangkalan Data (DAO) dan Rekod Aktif: Yii membenarkan pembangun memodelkan objek data dalam pangkalan data, dengan itu mengurangkan usaha mereka dalam menulis pernyataan SQL yang panjang dan berulang.
Penyepaduan dengan jQuery: Sebagai salah satu rangka kerja JavaScript yang paling popular, jQuery membolehkan penulisan antara muka JavaScript yang cekap dan fleksibel.
Input dan pengesahan borang: YII menjadikan pengumpulan input borang sangat mudah dan selamat. Yii mempunyai set pengesah untuk memastikan kesahihan data Ia juga mempunyai kaedah pembantu dan komponen untuk memaparkan ralat apabila pengesahan gagal.
Widget Web 2.0: Dikuasakan oleh jQuery, YII dilengkapi dengan set widget Web 2.0 seperti medan input autolengkap, TreeView dan banyak lagi.
Pengesahan dan Keizinan: Yii mempunyai sokongan pengesahan terbina dalam. Ia juga menyokong keizinan melalui kawalan akses berasaskan peranan berlapis (RBAC).
Tema: Ia boleh menukar pandangan aplikasi Yii serta-merta.
Perkhidmatan Web: Yii menyokong penjanaan spesifikasi perkhidmatan WSDL kompleks secara automatik dan mengurus pemprosesan permintaan perkhidmatan Web.
Pengantarabangsaan (I18N) dan penyetempatan (L10N): Yii menyokong penukaran mesej, format tarikh dan masa, format nombor dan penyetempatan antara muka.
Skim caching hierarki: Yii menyokong caching data, caching halaman, caching serpihan dan kandungan dinamik. Medium storan cache yang boleh ditukar dengan mudah tanpa menyentuh kod aplikasi.
Pengendalian ralat dan pengelogan: Pengendalian ralat dipersembahkan dengan baik, dan maklumat log boleh diklasifikasikan, ditapis dan ditugaskan ke lokasi yang berbeza.
Keselamatan: Yii datang dengan banyak langkah keselamatan untuk membantu mengamankan aplikasi web untuk mencegah serangan siber. Langkah-langkah ini termasuk pencegahan penskripan tapak (XSS), pencegahan pemalsuan permintaan merentas tapak (CSRF), pencegahan gangguan kuki, dsb.
Mematuhi XHTML: Komponen Yii dan alatan baris arahan menjana kod yang mematuhi XHTML.
Penjanaan kod automatik: Yii menyediakan alatan yang boleh menjana kod secara automatik mengikut keperluan anda, seperti menjana rangka program, aplikasi CRUD, dsb.
Berorientasikan objek sepenuhnya: Rangka kerja Yii mematuhi paradigma pengaturcaraan berorientasikan objek yang ketat. Ia tidak mentakrifkan sebarang fungsi atau pembolehubah global. Selain itu, hierarki kelas yang ditakrifkannya membolehkan kebolehgunaan semula dan penyesuaian maksimum.
Mesra untuk menggunakan kod pihak ketiga: Yii direka bentuk dengan teliti untuk menjadikannya berfungsi dengan baik dengan kod pihak ketiga. Sebagai contoh, anda boleh menggunakan kod PEAR atau Zend Framework dalam aplikasi Yii anda.
Dokumentasi terperinci: Setiap kaedah atau harta tunggal didokumenkan dengan sangat jelas. Tutorial yang komprehensif dan beberapa tutorial pemula juga disediakan.
Pustaka sambungan: Yii menyediakan perpustakaan sambungan yang terdiri daripada komponen yang disediakan pengguna, yang menjadikan senarai fungsi di atas tidak berkesudahan.
Mengenai Yii
Yii ialah rangka kerja PHP berprestasi tinggi berasaskan komponen untuk membangunkan aplikasi web berskala besar. Dalam pembangunan WEB, Yii boleh memaksimumkan penggunaan semula kod dan meningkatkan kelajuan pembangunan. Nama Yii (sebutan Yee atau [ji:], yang sepatutnya sebutan "yi") mewakili mudah, cekap dan boleh diperluas
Keperluan alam sekitar
Untuk menjalankan aplikasi web berkuasa Yii, anda memerlukan pelayan web yang menyokong PHP 5.1.0 atau lebih tinggi.
Bagi pembangun yang merancang untuk menggunakan Yii, mengetahui pengaturcaraan berorientasikan objek (OOP) akan sangat membantu. Kerana Yii ialah rangka kerja OOP tulen.
Skop permohonan
Yii ialah rangka kerja pengaturcaraan web am yang boleh digunakan untuk membangunkan hampir semua aplikasi web. Memandangkan ia ringan dan mempunyai penyelesaian caching yang matang, ia amat sesuai untuk membangunkan aplikasi trafik tinggi, seperti portal, forum, sistem pengurusan kandungan (CMS), sistem e-dagang, dsb.
Bandingkan dengan produk yang serupa
Seperti kebanyakan rangka kerja PHP, Yii ialah rangka kerja MVC.
Yii mengatasi rangka kerja lain dengan prestasi cemerlang, fungsi yang kaya dan dokumentasi yang jelas. Yii direka bentuk dengan teliti dari bawah ke atas agar sesuai untuk pembangunan aplikasi web yang serius. Ia bukan terbitan daripada projek lain mahupun gabungan kerja pihak ketiga. Ia adalah hasil daripada pengalaman pembangunan aplikasi web meluas pengarang dan penyelidikan dan pemikiran tentang rangka kerja dan aplikasi pengaturcaraan web yang paling popular.
Prestasi
prestasi yii
Yii ialah rangka kerja berprestasi tinggi Carta berikut menunjukkan kecekapan tinggi Yii berbanding rangka kerja PHP popular yang lain. Dalam carta ini, RPS bermaksud "Permintaan Sesaat" dan menerangkan bilangan permintaan yang dilakukan oleh rangka kerja ini sesaat. Semakin tinggi angka ini, semakin tinggi prestasi rangka kerja ini, dan kita dapat melihat bahawa Yii mengatasi prestasi rangka kerja lain dalam perbandingan ini. Kelebihan prestasi Yii amat ketara apabila sambungan APC yang digunakan secara meluas didayakan.
Prestasi sahaja bukanlah keseluruhan cerita (jika tidak, kita semua harus menggunakan HTML biasa atau PHP Dengan prestasi yang begitu hebat, Yii masih menyediakan set ciri yang sangat kaya yang boleh meningkatkan kecekapan pembangunan anda.
Kenapa Yii cepat sangat
Yii begitu pantas kerana ia menggunakan teknologi pemuatan malas secara meluas. Sebagai contoh, kelas tidak akan disertakan sehingga ia digunakan buat kali pertama; Rangka kerja lain mengalami pencapaian prestasi kerana ia akan mendayakan fungsi (cth. sambungan DB, sesi pengguna) tidak kira ia digunakan atau tidak semasa permintaan.
Tetapan standard
Di bawah kami menerangkan cara mereka bentuk aplikasi penanda aras dan mendapatkan keputusan RPS di atas.
Permintaan Penanda Aras
Memandangkan matlamat kami adalah untuk membandingkan overhed minimum bagi setiap rangka kerja, aplikasi penanda aras untuk setiap rangka kerja haruslah yang paling mudah Kami memilih untuk memaparkan rentetan teks "Hello World" dengan meletakkan pernyataan gema dalam tindakan lalai setiap aplikasi ciri rangka kerja tambahan (cth. sesi) dilumpuhkan untuk memastikan kewajaran perbandingan Untuk mendapatkan salinan aplikasi penanda aras, sila lihat projek phpmark.
Mengapa menggunakan “Hello World”
Kami melakukan ujian "hello world" terutamanya untuk mencapai matlamat kami, seperti mencari kos minimum bagi setiap rangka kerja. Ramai orang mengadu bahawa aplikasi "hello world" adalah sia-sia kerana aplikasi dunia sebenar selalunya melibatkan tugas yang lebih kompleks, seperti pertanyaan pangkalan data. Ini tidak betul. Malah, terutamanya dalam beberapa aplikasi web2.0 berskala besar, situasi yang sering kita hadapi biasanya agak hampir dengan "hello world". Sebagai contoh: aplikasi perlu mengembalikan masa pelayan semasa sebagai tindak balas kepada permintaan ajax. Halaman ini mempunyai kebanyakan kandungannya dicache, dan aplikasi hanya perlu mengambil kandungan cache dan memaparkannya.
Satu lagi sebab untuk menggunakan "hello world" ialah apabila merujuk ciri yang lebih kompleks (seperti pertanyaan pangkalan data), kejelasan perbandingan akan sukar untuk dipastikan. Sebagai contoh: rangka kerja boleh melaksanakan pertanyaan pangkalan data dengan sangat cekap, tetapi tidak mempunyai penyelesaian caching. Walaupun rangka kerja lain sedikit perlahan pada pertanyaan pangkalan data, ia mempunyai ciri caching lanjutan untuk mengurangkan overhed sistem. Secara keseluruhannya terdapat terlalu banyak faktor yang terlibat untuk membuat perbandingan yang jelas.
Alat dan Persekitaran Standard
Gunakan arahan "ab -t 30 -c 10 URL" alat ApacheBench untuk mendapatkan nombor RPS (contohnya: jalankan ujian pada tahap konkurensi 10 selama 30 saat). Untuk mendapatkan nombor setiap bingkai, kami mula-mula berhenti dan memulakan pelayan WEB Apache untuk mengelakkan gangguan. Juga jalankan program ujian beberapa kali untuk "memanaskan" persekitaran ujian. Dalam projek phpmark, terdapat skrip shell yang dipanggil benchmark.sh yang mengautomasikan proses penanda aras.
Kredit
Yii menarik banyak ideanya daripada rangka kerja dan aplikasi pengaturcaraan web yang terkenal. Di bawah ialah senarai pendek.
Prado: Ini adalah sumber utama idea untuk Yii. Yii mengguna pakai model pengaturcaraan berasaskan komponen dan dipacu peristiwa, lapisan abstraksi pangkalan data, seni bina aplikasi modular, pengantarabangsaan dan penyetempatan, dan banyak lagi ciri dan fungsinya.
Ruby on Rails: Yii mewarisi idea konfigurasinya. Juga merujuk corak reka bentuk ORM Rekod Aktifnya.
jQuery: Ini ialah rangka kerja JavaScript yang disepadukan ke dalam Yii.
Symfony: Yii merujuk reka bentuk penapisan dan seni bina pemalamnya.
Joomla: Yii dipetik untuk reka bentuk modular dan skema terjemahan maklumatnya.