Rumah >pembangunan bahagian belakang >tutorial php >PHP Master | Phalconphp: Satu lagi kerangka PHP?
kerangka phalcon php: gabungan sempurna kelajuan dan kecekapan
mata teras:
Rangka kerja PHP diubah dari kerangka kerja penuh yang termasuk ORM, komponen pengesahan dan sebilangan besar pembantu HTML untuk kerangka miniatur yang hanya menyediakan keupayaan routing. Mereka semua mendakwa unik, seperti tatabahasa yang indah, kelajuan yang sangat cepat atau didokumentasikan dengan baik. Phalcon adalah salah satu daripada mereka, tetapi ia sangat berbeza dari kerangka lain; Artikel ini akan memperkenalkan Phalcon secara ringkas dan keunikannya.
Apa itu Phalcon?
Phalcon adalah kerangka stack penuh. Ia mengikuti seni bina MVC dan menyediakan fungsi seperti ORM, Permintaan Objek Perpustakaan, Enjin Templat, Cache, Paging, dan lain -lain (senarai lengkap fungsi boleh didapati di laman web rasminya). Tetapi apa yang membuat Phalcon unik adalah bahawa anda tidak perlu memuat turun dan unzip ke direktori tertentu seperti kebanyakan rangka kerja lain. Sebaliknya, anda perlu memuat turun dan memasangnya sebagai modul PHP. Proses pemasangan hanya mengambil masa beberapa minit dan arahan pemasangan boleh didapati dalam dokumentasi. Di samping itu, Phalcon adalah sumber terbuka. Anda boleh mengubah suai kod dan mengkompilasi semula pada bila -bila masa.
Menyusun membawa prestasi yang lebih baik
Kelemahan utama PHP ialah setiap permintaan memerlukan membaca semua fail dari cakera keras, menukarnya ke bytecode, dan kemudian melaksanakannya. Ini boleh membawa kepada penalti prestasi yang serius berbanding dengan bahasa lain seperti Ruby (Rails) atau Python (Django, Flask). Rangka kerja Phalcon itu sendiri tinggal di RAM, jadi tidak perlu menangani keseluruhan fail rangka kerja. Penanda aras di laman web rasmi menunjukkan kelebihan prestasi yang signifikan. Phalcon mempunyai lebih daripada dua kali ganda jumlah permintaan sesaat bahawa codeigniter. Jika masa setiap permintaan diambil kira, Phalcon mengambil masa terpendek untuk memproses permintaan tersebut. Jadi ingat bahawa Phalcon lebih cepat apabila kerangka lain mendakwa cepat.
Menggunakan Phalcon
Phalcon menyediakan ciri -ciri klasik kerangka PHP MVC moden (penghalaan, pengawal, melihat templat, orms, cache, dll), dan tidak ada yang istimewa tentang kerangka lain kecuali kelajuan. Walau bagaimanapun, mari kita lihat bagaimana projek Phalcon tipikal. Pertama, biasanya terdapat fail boot yang dipanggil pada setiap permintaan. Permintaan dihantar ke bootloader melalui arahan yang disimpan dalam fail .htaccess.
<code><ifmodule mod_rewrite.c=""> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?_url=/ [QSA,L] </ifmodule></code>
Dokumentasi Phalcon mengesyorkan menggunakan struktur direktori berikut:
<code> app/ controllers/ models/ views/ public/ css/ img/ js/</code>
<code class="language-php"><?php try { // 注册自动加载器 $loader = new PhalconLoader(); $loader->registerDirs(array( '../app/controllers/', '../app/models/' ))->register(); // 创建依赖注入容器 $di = new PhalconDIFactoryDefault(); // 设置视图组件 $di->set('view', function(){ $view = new PhalconMvcView(); $view->setViewsDir('../app/views/'); return $view; }); // 处理请求 $application = new PhalconMvcApplication(); $application->setDI($di); echo $application->handle()->getContent(); } catch (PhalconException $e) { echo "PhalconException: ", $e->getMessage(); }</code>Model-Controller
<code class="language-php">public function indexAction() { echo '欢迎来到首页'; }</code>Model ini juga sangat mudah:
<code class="language-php">class Users extends PhalconMvcModel { }</code>Dengan memperluaskan kelas PhalConmvcModel, anda boleh segera mengakses beberapa kaedah mudah seperti mencari (), simpan () dan mengesahkan (). Anda boleh menggunakan hubungan berikut:
<code class="language-php">class Users extends PhalconMvcModel { public function initialize() { $this->hasMany('id', 'comments', 'comments_id'); } }</code>Lihat
<code class="language-php"><!DOCTYPE html> <title><?php echo $this->title; ?></title> <?php echo $this->getContent(); ?> </code>
Phalcon Query Language
<code class="language-php">$this->flashSession->success('成功登录!');</code>
anda boleh menggunakan pembina pertanyaan dan bukannya SQL mentah ini:
<code class="language-php">$query = new PhalconMvcModelQuery("SELECT * FROM Users", $di); $users = $query->execute();</code>
Ini akan menjadi sangat mudah apabila pertanyaan anda menjadi lebih kompleks.
<code class="language-php">$users = $this->modelsManager->createBuilder()->from('Users')->orderBy('username')->getQuery()->execute();</code>
Kesimpulan
Phalcon menyediakan ciri -ciri klasik kerangka PHP MVC moden, jadi ia harus sangat mudah digunakan, dalam erti kata ini ia hanya satu lagi rangka kerja PHP. Tetapi apa yang benar -benar menonjol adalah kelajuannya. Jika anda berminat untuk mempelajari lebih lanjut mengenai Phalcon, sila lihat dokumentasi untuk rangka kerja ini. Pastikan anda mencubanya!
(gambar dari fotolia)
FAQs Mengenai Rangka Kerja PhalConphp (Soalan Lazim)
Memasang Phalconphp memerlukan menyusunnya sebagai lanjutan PHP. Proses ini berbeza -beza dengan sistem operasi pelayan. Untuk kebanyakan pengagihan Linux, anda boleh menggunakan Pengurus Pakej untuk memasang Phalconphp. Untuk Windows, anda boleh memuat turun fail DLL dan menambahkannya ke direktori pelanjutan PHP. Selepas pemasangan, anda perlu memulakan semula pelayan Web untuk perubahan yang berlaku.
Ya, reka bentuk Phalconphp adalah tidak dapat diabaikan. Anda boleh menggunakannya dengan kod PHP anda yang sedia ada tanpa sebarang masalah. Ini menjadikannya pilihan yang sangat baik untuk secara beransur -ansur refactoring aplikasi PHP warisan.
PhalConphp termasuk sistem pemetaan relasi objek (ORM) yang membolehkan interaksi mudah dengan pangkalan data. Anda boleh menggunakannya untuk membuat, membaca, mengemas kini, dan memadam rekod tanpa perlu menulis pertanyaan SQL secara manual. ORM juga menyokong hubungan antara jadual, yang membolehkan struktur data kompleks dikendalikan dengan mudah.
Phalconphp adalah rangka kerja sejagat yang boleh digunakan untuk membina pelbagai aplikasi. Dari laman web mudah ke aplikasi web yang kompleks, Phalconphp menyediakan fungsi dan prestasi yang anda perlukan. Ia amat sesuai untuk laman web dan aplikasi trafik yang tinggi yang memerlukan interaksi masa nyata.
PhalConphp termasuk komponen borang yang boleh mengendalikan input pengguna dengan mudah. Anda boleh menggunakannya untuk membuat borang, mengesahkan input, dan memaparkan mesej ralat. Komponen bentuk juga termasuk perlindungan terhadap serangan pemalsuan permintaan lintas tapak (CSRF).
Ya, PhalConphp dibina di sekitar arkitek model-view-controller (MVC). Corak reka bentuk ini membahagikan aplikasi ke dalam tiga bahagian yang saling berkaitan, menjadikannya lebih mudah untuk mengekalkan dan menguji. Phalconphp juga menyokong corak reka bentuk lain seperti suntikan ketergantungan dan pengaturcaraan yang didorong oleh peristiwa.
PhalConphp termasuk sistem pengendalian ralat yang kuat. Anda boleh menggunakannya untuk menangkap dan mengendalikan pengecualian, kesilapan log, dan memaparkan halaman ralat tersuai. Sistem pengendalian ralat juga disepadukan dengan seni bina MVC, yang membolehkan anda mengendalikan kesilapan di peringkat pengawal.
Ya, reka bentuk Phalconphp berskala. Komposer boleh digunakan untuk mengurus dan memasang perpustakaan pihak ketiga. Phalconphp juga termasuk komponen loader yang membolehkan kelas dimuat secara automatik dari mana -mana direktori dengan mudah.
Phalconphp mengandungi beberapa ciri keselamatan dari kotak. Ciri -ciri ini termasuk penapisan input, pelarian output, dan perlindungan CSRF. Anda juga boleh menggunakan komponen ACL PhalConphp untuk melaksanakan kawalan akses dalam aplikasi anda.
Atas ialah kandungan terperinci PHP Master | Phalconphp: Satu lagi kerangka PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!