Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Rangka Kerja PHP

Rangka Kerja PHP

WBOY
WBOYasal
2024-08-29 12:34:34737semak imbas

Beberapa komuniti sumber terbuka menawarkan rangka kerja PHP, yang menyediakan ciri sebaris untuk membangunkan aplikasi berasaskan PHP. Pembangun mempunyai pilihan untuk menggunakan rangka kerja kerana ia bukan komponen wajib. Walau bagaimanapun, tanpa rangka kerja, pendekatan vanila untuk membangunkan PHP termasuk banyak overhed mengurus ciri perisian, fungsi dan ciri keselamatan yang memerlukan lebih banyak sumber pembangun dan meningkatkan kos pembangunan. Beberapa rangka kerja PHP yang digunakan secara meluas ialah Laravel, CodeIgniter, Symfony, CakePHP, FuelPHP, Phalcon, Slim dan Zend Framework. Selain itu, rangka kerja PHP menyediakan beberapa ciri berharga yang membantu menyelaraskan proses pembangunan aplikasi PHP yang harus disertakan dalam seni bina aplikasi.

Senarai Teratas Rangka Kerja PHP (Ciri)

Di bawah ialah senarai rangka kerja PHP terbaik berdasarkan populariti dan keupayaan untuk memudahkan pembangunan aplikasi.

IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

1. Laravel

Ia adalah rangka kerja sumber terbuka mengikut seni bina berasaskan model-view-controller.

Pelbagai ciri yang disediakan olehnya ialah:

  • Komposer telah tersedia sejak Laravel 4 muncul, dan ia bertindak sebagai pengurus pergantungan untuk menambah rangka kerja-agnostik.
  • ORM fasih, iaitu, pelaksanaan corak rekod yang aktif.
  • Pembina Pertanyaan menyediakan satu set kelas.
  • Laravel memberi inspirasi kepada kod yang sangat bersih dan boleh dibaca, dengan itu memastikan kehidupan pembangun mudah.
  • Laravel menawarkan keselamatan aplikasi web yang teguh, menggabungkan pencincangan kata laluan, penyulitan, pengesahan e-mel dan pengesahan API.
  • Laravel memastikan laluan yang dilindungi dan selamat dengan mentakrifkan semua laluan dalam direktori laluan, dan rangka kerja memuat turun fail ini secara automatik.
  • Untuk mengelakkan pemalsuan merentas tapak, sistem menambahkan token CSRF pada URL.
  • Rangka kerja ini menawarkan ciri seperti templat Blade (enjin templat), penyetempatan, Javascript dan CSS Scaffolding di bahagian hadapan.
  • Menyokong Redis (kedai nilai kunci), penomboran, migrasi (berkongsi skema pangkalan data), pembenihan pangkalan data,

Keperluan Pelayan sebelum bekerja dengan Laravel:

Menggunakan mesin maya Laravel Homestead ialah pilihan terbaik, dan kami amat mengesyorkan menggunakannya sebagai persekitaran pembangunan Laravel tempatan kami.

Jika anda tidak menggunakan Homestead, maka perkara berikut diperlukan:

  • PHP >= 7.1.3
  • Sambungan PHP OpenSSL
  • Sambungan PHP PDO
  • Sambungan PHP Mbstring
  • Sambungan PHP Tokenizer
  • Sambungan PHP XML
  • Ctype PHP Sambungan
  • Sambungan PHP JSON
  • Sambungan PHP BMCath

Memasang Laravel:

Laravel menggunakan komposer untuk mengurus kebergantungannya, jadi keperluan utama ialah komposer itu diprapasang. Kemudian muat turun pemasang Laravel menggunakan komposer seperti yang diberikan di bawah.

Komposer Global memerlukan Laravel/pemasang.

  • Mencipta projek melalui komposer

Projek ciptaan komposer – blog Laravel/Laravel prefer-dist

  • Pelayan Pembangunan Setempat

2. CodeIgniter

CodeIgniter ialah rangka kerja pembangunan sumber terbuka.

Berikut adalah ciri yang disediakan olehnya:

  • Ia tidak memerlukan pelaksanaan model-view-controller yang ketat; pengawal adalah wajib, dan model serta paparan adalah pilihan.
  • Fungsi Pembantu ada, seperti Pembantu URL yang membantu pembuatan pautan, Pembantu Borang di sana, Pembantu Teks tersedia untuk memformat teks dan Pembantu Kuki ada di sana untuk menetapkan dan membaca kuki.
  • Anda boleh mencipta perpustakaan baharu dan menggantikan serta mengalih keluar perpustakaan asli.
  • Ciri cangkuk menyediakan cara untuk memanfaatkan dan mengubah suai kerja dalaman rangka kerja tanpa menggodam fail teras.
  • Ciri muat automatik membenarkan pengamulaan automatik perpustakaan, pembantu dan model setiap kali sistem berjalan.
  • CodeIgniter menyediakan ciri caching halaman, dengan itu meningkatkan prestasi.
  • CodeIgniter termasuk kelas pengelogan ralat yang menyimpan ralat dan menyahpepijat mesej sebagai fail teks.
  • Penghalaan URI ada; rentetan URL dipetakan secara unik kepada pengawal.
  • Pencincangan kata laluan ada untuk versi PHP > 5.5.
  • Dalam bahagian pangkalan data, pelbagai ciri yang disediakan ialah QueryBuilder, QueryCaching, Transaksi, dll.
  • Anda boleh menetapkan pembolehubah persekitaran untuk menentukan tempat aplikasi harus dijalankan, sama ada dalam persekitaran pembangunan atau dalam pengeluaran.

Bagaimana untuk Memasang CodeIgniter?

  • Muat turun CodeIgniter.
  • Buat zip bungkusan.
  • Muat naik folder dan fail CodeIgniter ke pelayan anda. Biasanya, fail index.php akan berada di akar anda.
  • Buka fail application/config/config.php dengan editor teks dan tetapkan URL asas anda; jika anda berhasrat untuk menggunakan penyulitan atau sesi, tetapkan kunci penyulitan anda.
  • Jika anda berhasrat untuk menggunakan pangkalan data, buka fail application/config/database.php dengan editor teks dan tetapkan tetapan pangkalan data anda.

3. Symfony

Symfony ialah perisian sumber terbuka; Komponen Symfony ialah satu set perpustakaan PHP yang dipisahkan dan boleh digunakan semula. Ia bertujuan untuk membangunkan aplikasi perusahaan yang mantap dan memberi pembangun kawalan penuh ke atas konfigurasi daripada direktori kepada perpustakaan asing dan boleh disesuaikan.

Symfony digabungkan dengan ciri berikut”:

  • Penghalaan setempat (i18n) disediakan; Dengan menyetempatkan laluan, ia menjadi mungkin untuk menawarkan laluan unik bagi setiap tempat. Symfony membenarkan menulis laluan ini tanpa pertindihan dan turut menyokong kad bebas.
  • Templat ranting ada; ia mudah dan tidak memproses tag PHP; twig boleh melakukan pelarian HTML automatik, pelarian keluaran kontekstual manual dan beberapa penapis.
  • Caching templat ranting mempercepatkan proses dengan menyusun templat ke dalam kelas PHP asli dan menyimpan templat tersebut.
  • Komponen aset ada untuk penjanaan URL dan versi CSS, JS dan imej.
  • Komponen browserKit ada untuk mensimulasikan gelagat penyemak imbas web, membolehkan seseorang membuat permintaan, mengklik pada pautan dan menyerahkan borang secara pengaturcaraan.
  • Komponen suntikan kebergantungan melaksanakan bekas perkhidmatan serasi PSR-11 yang membenarkan penyeragaman dan pemusatan objek dalam aplikasi.
  • Komponen DOMCrawler ada untuk memudahkan navigasi DOM untuk dokumen HTML dan XML.
  • Komponen Dotenv ada untuk membuat pembolehubah persekitaran disimpan dalam pembolehubah .env.
  • Penghantar acara ada di sana supaya komponen boleh berkomunikasi melalui penghantaran acara dan mendengarnya.
  • Komponen LDAP sudah ada untuk berkomunikasi dengan pelayan LDAP.
  • Komponen ExpressionLanguage menyediakan enjin yang boleh menyusun dan menilai ungkapan.
  • Komponen Polyfill/APCU menyediakan fungsi apcu_* dan kelas ACPUIterator kepada pengguna sambungan APC lama.
  • Komponen Serializer ada untuk menukar objek kepada format seperti JSON, XML atau YAML.

Langkah Pemasangan:

Gunakan langkah berikut untuk muat turun; Sistem harus prapasang komposer.

Komposer memerlukan simfoni/aset:

Untuk muat turun komponen individu seperti yang dinyatakan di atas, sila lawati: https://symfony.com/components

4. CakePHP

CakePHP ialah platform sumber terbuka yang menjadikan pembinaan aplikasi web mudah dan lebih pantas serta memerlukan kurang kod.

CakePHP dilengkapi dengan ciri-ciri berikut:

  • Ia menyediakan perancah untuk membina prototaip dengan pantas.
  • Kelas cache dalam CakePHP menyokong caching dan menyediakan antara muka statik dan API seragam untuk berinteraksi dengan pelbagai pelaksanaan caching.
  • Kelas cincang menyediakan utiliti statik yang membuat pengurusan tatasusunan yang betul, dengan itu menjadikan kod dioptimumkan.
  • Kelas Inflector memanipulasi rentetan yang disediakan dan mengendalikan variasi perkataan, termasuk pemajmukan dan penggunaan huruf besar.
  • Melog adalah mudah dalam CakePHP; LogTrait menyediakan fungsi log().
  • Cara terpantas untuk bangun dan berjalan dengan REST ialah menambah beberapa baris untuk menyediakan laluan sumber dalam config/routes.php.
  • Pakej pengesahan dalam CakePHP menyediakan ciri untuk membina pengesah yang boleh mengesahkan tatasusunan arbitrari data dengan mudah.
  • Pelbagai pemalam disokong untuk digunakan bersama dengan CakePHP, dan ia adalah Chronos (yang menyediakan koleksi sambungan sifar kebergantungan pada objek DateTime), DebugKit (mempunyai bar alat penyahpepijatan dan alat penyahpepijatan yang dipertingkatkan), ElasticSearch ( yang menyediakan abstraksi seperti ORM di atas carian elastik, memudahkan ujian dan pengindeksan dokumen).
  • Phinx dan CakePHP phinx membenarkan pembangun mengubah dan memanipulasi pangkalan data dengan jelas. Tidak perlu menulis tangan SQL; sebaliknya, phinx menyediakan API yang mantap untuk membuat migrasi menggunakan kod PHP.
  • Konsol Bake disediakan untuk menjalankan CakePHP dengan lebih pantas; konsol Bake boleh mencipta model, pandangan, gelagat, kes ujian, lekapan dan pemalam.

Phinx boleh dipasang hanya dengan:

komposer php. phar memerlukan robmorgan/phinx

Sokongan perisian tengah ada supaya kami boleh membungkus aplikasi kami ke dalam lapisan pengendalian permintaan atau pembinaan respons yang boleh diguna semula dan boleh dibuat.

Pemasangan dan Pra-syarat:

Di bawah adalah prasyarat yang perlu dipenuhi sebelum memulakan pemasangan:

  • Pelayan HTTP ( Apache, Nginx atau Microsoft IIS).
  • PHP 7.3.
  • sambungan PHP mbstring
  • sambungan PHP intl (jika menggunakan XAMPP, sambungan intl hendaklah disertakan, tetapi pastikan untuk menyahkomen sambungan = php_intl.dll dalam Php.ini dan mulakan semula pelayan XAMPP melalui panel kawalan, sekiranya anda menggunakan WAMP; Secara lalai , sambungan intl diaktifkan untuk mendayakannya, anda mesti pergi ke folder dan menyalin semua fail dengan nama yang serupa dengan icu*.dll Selepas itu, tampalkan fail ini ke dalam direktori bin Apache.
  • Sambungan PHP SimpleXML.
  • Sambungan PHP PDO.

Anda perlu memasang salah satu pangkalan data daripada senarai yang diberikan pada mesin anda:

  • MySQL ( v5.5.3 atau lebih tinggi )
  • MariaDB (v 5.5 atau lebih tinggi)
  • PostgreSQL
  • SQLite3
  • Pelayan Microsoft SQL ( >= versi 2008)

5. FuelPHP

FuelPHP ialah rangka kerja sumber terbuka, pantas dan serasi dengan versi PHP 5.4+.

Kami telah menyertakan ciri berikut:

  • Ia ialah rangka kerja jenis model-view-viewmodel (MVVM) yang mengehadkan dirinya kepada corak model-view-controller (MVC) dan mengikut pendekatan model-view-viewmodel (MVVM). Lihat model ialah istilah alternatif untuk model pembentangan.
  • FuelPHP menyokong pendekatan berasaskan penghala yang membolehkan kami menulis URI secara terus.
  • Menyokong token CSRF untuk mengelakkan pemalsuan skrip merentas tapak.
  • Penapisan input dan pembina pertanyaan membantu dalam suntikan SQL.
  • Kami menyokong rangka kerja pengesahan untuk memastikan pengesahan selamat.
  • FuelPHP menyediakan CLI yang dipanggil "minyak", direka untuk mempercepatkan pembangunan, bantuan ujian dan penyahpepijatan. Ia juga membantu untuk menjalankan migrasi pangkalan data.
  • Pembangun boleh memulakan permulaan dengan menggunakan kelas asas yang disediakan untuk pengawal dan model. Ciri-ciri tersebut ialah – Controller_Template (menambahkan kefungsian templat halaman mudah pada pengawal), Controller_Rest (cara untuk penciptaan API RESTful), Controller_Hybrid (menggabungkan dua ciri menjadi satu pengawal), Model_crud (menyediakan semua kaedah untuk operasi CRUD dalam satu jadual).
  • ORM ringan menyediakan cara berorientasikan objek untuk bekerja dengan data pangkalan data dan melaksanakan CRUD; perhubungan seperti has-many dan many-many ada, melata menyimpan dan memadam untuk objek berkaitan. Selain itu, pemerhati berada di sana untuk mengemas kini tika objek.
  • Keselamatan menggabungkan rangka kerja Auth, telah menyepadukan perpustakaan Opauth dan menyediakan pelbagai ciri lain seperti Kawalan Akses Berasaskan Peranan (RBAC), fungsi pencincangan selamat untuk kata laluan dan penyepaduan OAuth untuk pengesahan media sosial.
  • Terdapat penghurai templat untuk meningkatkan pandangan daripada PHP mudah; terdapat banyak perpustakaan untuknya:
    1. Mimisi
    2. Ranting
    3. Haml
    4. Jed
    5. Daewoo
    6. Bijak
    7. Penurunan nilai

Langkah Pemasangan:

Ikuti langkah yang diberikan untuk perkara yang sama:

  • $ curl https://get.fuelphp.com/oil | sh

Untuk mencipta projek, anda boleh mengikuti langkah berikut:

  • $ minyak mencipta
  • $ komposer mencipta-projek bahan api/bahan api –prefer-dist

Kesimpulan

Dalam dokumentasi di atas, kami memetik berbilang Rangka Kerja PHP untuk membawa berbilang ciri pembangunan kod. Sebelum memilih mana-mana daripada itu, adalah penting untuk membincangkan keperluan dan corak reka bentuk yang perlu diikuti. Rangka kerja mempunyai kepelbagaian dan menyediakan pelbagai pemalam untuk membuat pengelogan dan pengesanan metrik berada di sana. Rangka kerja yang dinamakan Lumen oleh Laravel amat dihargai semasa mencari pembangunan perkhidmatan mikro, kerana seni bina perkhidmatan mikro berbeza daripada aplikasi monolitik. Mekanisme pengelogan, pengendalian pangkalan data, keselamatan Auth dan pelaksanaan menjadi perhatian utama sebelum pengekodan. Apabila anda memilih rangka kerja, anda perlu mempertimbangkan domain khusus yang dimaksudkan untuk aplikasi tersebut. Ini termasuk bidang seperti perkhidmatan perbankan dan kewangan, pengurusan rantaian bekalan, sains hayat, runcit dan rangkaian sosial.

Atas ialah kandungan terperinci Rangka Kerja PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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 sebelumnya:Perintah PHPArtikel seterusnya:Perintah PHP