Menjana fail dan carta Excel dengan phpexcel
Dalam artikel ini, kita akan melihat cara menggunakan perpustakaan phpexcel untuk menyediakan fungsi "eksport ke excel" dalam aplikasi web supaya pengguna dapat mengeksport data ke dalam fail Excel 2007/2013 untuk analisis selanjutnya.
NOTA: Terdapat beberapa perpustakaan PHP yang dapat memberikan manipulasi fail Excel (dan Office). Lib yang kami gunakan di sini dipanggil PhPExcel, subset phpoffice, yang boleh diklon di sini.
Takeaways Key
- phpexcel, subset phpoffice, membolehkan manipulasi PHP tulen fail Excel, mengelakkan keperluan untuk ketergantungan interop dan tingkap.
- Tutorial menunjukkan membuat fail Excel dengan data permainan, analisis tambahan, dan carta menggunakan phpexcel untuk meningkatkan pembentangan dan analisis data.
- Persediaan yang diperlukan termasuk versi PHP di atas 5.2.0, membolehkan sambungan PHP tertentu, dan menggunakan komposer untuk pemasangan PHPExcel.
- PHPExcel membolehkan manipulasi fail Excel terperinci termasuk menetapkan sifat, memaparkan lembaran kerja, memasukkan formula, dan membuat carta visual yang menarik.
- Output akhir melibatkan menyimpan fail Excel dalam format yang boleh dimuat turun, memastikan carta dimasukkan, dengan nota pada ketidakupayaan semasa PHPExcel untuk mengendalikan carta pai dengan berkesan dalam Excel 2013.
Selepas tutorial ini, kami akan mendapat:
- Lembaran yang menunjukkan maklumat permainan (tarikh dimainkan, pasukan, skor, menang/kehilangan status) pasukan NBA kegemaran saya-LA Lakers, dalam musim 2013-14.
- Butang yang akan mengeksport data ke dalam fail Excel 2013.
- fail Excel akan dihuni dengan beberapa data analitik tambahan dan carta yang juga dihasilkan oleh PHP dan Excel.
Penyediaan
Untuk menggunakan phpexcel, kita mesti mempunyai versi PHP di atas 5.2.0. Terdapat juga 3 sambungan PHP yang akan didayakan: php_zip (yang penting untuk mengendalikan format Office 2007), php_xml dan php_gd2 (pilihan, tetapi diperlukan untuk penjenayah lebar lajur yang tepat).
Seterusnya, pasang perpustakaan melalui komposer.
Sudah tentu, kita harus mempunyai pangkalan data kita dan berjalan. Dump data untuk tutorial ini (Lakers.sql) telah dimuat naik ke repo yang berkaitan dengan artikel ini. Data ini diambil dengan pernyataan SQL yang mudah: "Pilih * dari Lakers" (jumlah 90 rekod, termasuk 8 pra-musim dan 82 permainan musim biasa).
Juga, demo ini menggunakan Silex sebagai rangka kerja MVC. Twig akan digunakan sebagai enjin templat. Pastikan kebergantungan yang diperlukan ditentukan dengan betul dalam fail komposer.json anda.
Fail indeks
index.php akan menjadi titik masuk untuk aplikasi SILEX kami. Akan ada dua laluan yang ditakrifkan:
<span>$app->get('/', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->index($app); </span><span>}); </span> <span>$app->post('/export', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->export($app); </span><span>});</span>
Route '/' akan menjadi titik masuk kami dan memaparkan data dan butang "Eksport". Laluan '/Eksport' akan melakukan proses pengendalian akhir belakang yang sebenarnya mengeksport ke Excel. Kedua-dua fungsi dibungkus dalam kelas yang ditentukan pengguna (classexcel.php). Dalam artikel ini, kami akan memberi tumpuan kepada fail ini - atau lebih tepatnya, fungsi eksport dan fungsi berkaitan yang ditakrifkan dalam fail ini dan membincangkan beberapa aspek penting dalam manipulasi Excel menggunakan perpustakaan phpexcel.
aplikasi Excel dan data meta
Apabila kita mengklik ikon untuk melancarkan Excel, aplikasi Excel bermula. Di bawah keadaan biasa, ia juga akan mengandungi buku kerja dengan 3 (dalam Excel 2013, hanya 1) lembaran kerja. Lembaran kerja adalah "kanvas" yang kita mainkan. Ini adalah dua istilah yang paling penting dalam Excel. Istilah penting lain mungkin termasuk: sel, julat, dan lain -lain
Untuk meneliti fail Excel, kami menggunakan:
<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
Contoh aplikasi Excel biasanya dipetakan ke fail Excel fizikal. Ia mempunyai data meta sendiri untuk menerangkan fail yang kami buat. Data meta ditunjukkan apabila kita "memasuki" fail excel (atau klik kanan pada fail itu dan pilih "Properties"):
<span>$ea->getProperties() </span> <span>->setCreator('Taylor Ren') </span> <span>->setTitle('PHPExcel Demo') </span> <span>->setLastModifiedBy('Taylor Ren') </span> <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file') </span> <span>->setSubject('PHP Excel manipulation') </span> <span>->setKeywords('excel php office phpexcel lakers') </span> <span>->setCategory('programming') </span> <span>;</span>
lembaran kerja dan populasi sel
Lembaran kerja mungkin objek yang kita akan memanipulasi yang paling banyak: Sel -sel populasi dengan data atau formula, menggunakan gaya, melakukan penapisan data, memasukkan carta, dan lain -lain
Untuk mendapatkan rujukan kepada lembaran kerja, kami menggunakan:
<span>$ews = $ea->getSheet(0); </span><span>$ews->setTitle('Data');</span>
Untuk mengisi sel/sel, kita mempunyai sekurang -kurangnya dua pilihan:
- Untuk tajuk, tajuk, item deskriptif lain, kami akan mengisi mereka satu demi satu menggunakan kaedah setCellValue.
- Untuk data berstruktur, yang kebanyakannya berasal dari pernyataan SQL Select, kami akan menggunakan kaedah FromArray.
<span>$ews->setCellValue('a1', 'ID'); // Sets cell 'a1' to value 'ID </span> <span>$ews->setCellValue('b1', 'Season'); </span> <span>... </span> <span>//Fill data </span> <span>$ews->fromArray($data, ' ', 'A2');</span>
1. Sumber data, dalam bentuk array;
2. Nilai "pengisi" sekiranya data adalah batal;
3. Rujukan sel untuk memulakan pengisian (dari kiri ke kanan, kemudian ke bawah).
nota: Apabila kita menggunakan PDO untuk mengambil data, mudah $ res = $ q-> fetchall (pdo :: fetch_assoc); Panggilan akan memaksa data hasil yang dikembalikan untuk mengandungi array yang berkaitan sahaja, tanpa indeks. Jika fetchall dipanggil tanpa pilihan pdo :: fetch_assoc, set hasil sebenarnya akan mengandungi dua set data yang sama, satu dalam bentuk array yang berkaitan, satu dalam bentuk yang diindeks dan akan membuat pendua dalam fail Excel apabila menggunakan fromArray.
Kami juga mungkin mahu gaya baris header (id, musim, dll). Untuk melakukan itu, kami juga mempunyai dua cara:
<span>$app->get('/', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->index($app); </span><span>}); </span> <span>$app->post('/export', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->export($app); </span><span>});</span>
Salah satu cara adalah menggunakan beberapa kaedah mendapatkan untuk mendapatkan objek gaya yang kita mahu mengubah dan mengubahnya. Kami melakukan ini untuk gaya "Latar Belakang".
yang lain adalah untuk mengisytiharkan array "gaya" dan tentukan gaya yang kita mahu ubah dan apa yang harus mengubahnya. Kemudian, kami menggunakan ApplyFromArray untuk memohon gaya dalam kumpulan. Di sini kita menukar fon dan penjajaran.
Kedua -dua kaedah menyokong julat sebagai parameter mereka ($ header = 'a1: h1';), yang sangat mudah.
Akhirnya, kita mungkin mahu menyesuaikan lebar lajur supaya mereka sesuai dengan panjang yang dipaparkan dalam setiap lajur:
<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
Malangnya, ini tidak menyokong parameter pelbagai, jadi kami menggunakan gelung untuk membuat ini berlaku.
Jika kita menyimpan fail sekarang - kita akan membincangkan penjimatan kemudian - kita akan melihat bahawa fail XLSX diisi dengan data dan diformat dengan betul:
Saya sentiasa menggunakan lembaran berasingan untuk menyimpan data asal dan sekurang -kurangnya satu lagi lembaran untuk memaparkan ringkasan dan/atau maklumat analisis.
Untuk memasukkan lembaran kerja baru, kami lakukan:
<span>$ea->getProperties() </span> <span>->setCreator('Taylor Ren') </span> <span>->setTitle('PHPExcel Demo') </span> <span>->setLastModifiedBy('Taylor Ren') </span> <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file') </span> <span>->setSubject('PHP Excel manipulation') </span> <span>->setKeywords('excel php office phpexcel lakers') </span> <span>->setCategory('programming') </span> <span>;</span>
- $ ews2: contoh lembaran kerja excel yang kita hendak memasukkan;
- $ Lokasi: Indeks lembaran kerja ini. Jadi 0 bermakna ia harus menjadi yang pertama. -1 bermaksud ia harus menjadi yang terakhir.
<span>$ews = $ea->getSheet(0); </span><span>$ews->setTitle('Data');</span>
Nota: Sila beri perhatian khusus kepada rujukan sel (G2: G91). Cara yang malas menulis formula itu adalah menggunakan pelbagai seperti G: G. Ini berfungsi dengan baik apabila tiada carta dalam lembaran. Sekiranya terdapat carta, n notasi G: G akan gagal, membuang pengecualian.
Lembaran "Ringkasan" ini kelihatan seperti ini:
% yang ditunjukkan dalam sel B4 ditetapkan oleh kod berikut:
Sila ambil perhatian beberapa isu gaya di sini. Untuk A1, saya telah menggunakan gaya berikut:
<span>$ews->setCellValue('a1', 'ID'); // Sets cell 'a1' to value 'ID </span> <span>$ews->setCellValue('b1', 'Season'); </span> <span>... </span> <span>//Fill data </span> <span>$ews->fromArray($data, ' ', 'A2');</span>
<span>$app->get('/', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->index($app); </span><span>}); </span> <span>$app->post('/export', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->export($app); </span><span>});</span>
Hasilnya menunjukkan bahawa berat fon, saiz fon, dan penjajaran digunakan dengan betul. Penggabungan A1 dan B1 ke A1 juga dilakukan dengan betul. Tetapi, kaedah setAutosize gagal pada sel yang digabungkan ini. Hasilnya ialah sel ini (A1) masih diperah. Ini bermakna pengiraan lebar auto tidak akan selalu berfungsi. Nah, bukan masalah besar.
gambar bernilai seribu perkataan
Ia sentiasa baik untuk mempunyai perwakilan visual data kami, jadi carta akan berguna. Excel mempunyai set carta terbina dalam yang kaya untuk kami pilih. PHPExcel boleh memanfaatkan hampir semua ini. Carta pertama yang kita buat adalah carta garis yang menunjukkan peningkatan skor dalam setiap permainan pasukan Lakers dan lawannya.
Membuat carta adalah pekerjaan pengekodan yang panjang, walaupun dengan sokongan perpustakaan. Kod penuh proses ini boleh didapati dalam kaedah AddChart1 dan AddChart2 yang berada dalam fail classexcel.php kami. Saya hanya akan menerangkan langkah -langkah utama.
- Label Siri Data
<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
- Jenis. Untuk label, tidak syak lagi ia harus "String";
- Sumber. Ia berada di D1 atau E1;
- format. Biasanya, menyediakan null adalah mencukupi dan format lalai akan digunakan;
- hitung. Berapa banyak data dalam sumber. Ia biasanya menjadi 1.
- x label nilai paksi
<span>$ea->getProperties() </span> <span>->setCreator('Taylor Ren') </span> <span>->setTitle('PHPExcel Demo') </span> <span>->setLastModifiedBy('Taylor Ren') </span> <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file') </span> <span>->setSubject('PHP Excel manipulation') </span> <span>->setKeywords('excel php office phpexcel lakers') </span> <span>->setCategory('programming') </span> <span>;</span>
- Nilai Siri Data
- Kami akan menggunakan "Skor Sendiri" (lajur D) dan "Skor lawan" (lajur E). Kedua -duanya adalah dari baris 2 hingga baris 91.
Selepas kita mempunyai 3 pembolehubah kritikal di atas, kita boleh menubuhkan siri data. Dalam Excel, siri data mengandungi maklumat berikut yang penting untuk membuat carta:
<span>$ews = $ea->getSheet(0); </span><span>$ews->setTitle('Data');</span>
Jenis carta
- kumpulan
- Mengira nilai siri data
- Label Siri Data
- x label nilai paksi
- Nilai Siri Data
- dan pembina dipanggil dengan hanya lulus semua parameter ini:
Seterusnya, kami akan membuat kawasan plot dan legenda:
<span>$app->get('/', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->index($app); </span><span>}); </span> <span>$app->post('/export', function () use ($app) </span><span>{ </span> <span>$c=new trExcel<span>\Excel</span>(); </span> <span>return $c->export($app); </span><span>});</span>
Kawasan plot mengandungi susun atur carta dan siri data. Susun atur boleh menentukan sama ada carta akan menunjukkan nilai, peratusan, dan lain -lain. Kita boleh menggunakan null supaya susun atur lalai akan digunakan.
Legenda digunakan untuk menyediakan perwakilan visual kumpulan data.
Dan sekarang, akhirnya, kita boleh membuat carta:
<span>$ea = new <span>\PHPExcel</span>(); // ea is short for Excel Application</span>
satu -satunya parameter baru dalam pembina ini ialah nama carta. "Chart1" akan cukup baik. Tajuk carta boleh dibuat melalui:
<span>$ea->getProperties() </span> <span>->setCreator('Taylor Ren') </span> <span>->setTitle('PHPExcel Demo') </span> <span>->setLastModifiedBy('Taylor Ren') </span> <span>->setDescription('A demo to show how to use PHPExcel to manipulate an Excel file') </span> <span>->setSubject('PHP Excel manipulation') </span> <span>->setKeywords('excel php office phpexcel lakers') </span> <span>->setCategory('programming') </span> <span>;</span>
Selepas carta dibuat, kami menetapkan kedudukan dan saiznya dengan menetapkan koordinat sudut kanan dan bawah kanannya dan memasukkannya ke dalam lembaran kerja.
Nota: Kebanyakan masa, rujukan sel adalah kes tidak sensitif, tetapi sila gunakan nombor huruf modal apabila terdapat carta dalam lembaran.
Simpan fail
Sebagai langkah terakhir, kami menyimpan fail supaya pengguna dapat memuat turunnya:
<span>$ews = $ea->getSheet(0); </span><span>$ews->setTitle('Data');</span>
Ia menggunakan corak kilang untuk membuat objek penulis untuk menyimpan fail. Format akan ditentukan (kami menggunakan format "Excel2007" dalam kes kami).
Pastikan kami mempunyai setIncludecharts (benar) dalam proses penjimatan, jika tidak, carta tidak akan berada di sana.
Ingat ketika saya berkata Phpexcel boleh memanfaatkan hampir semua jenis carta? Satu pengecualian bahawa lib ini tidak dapat dilakukan dengan baik di Excel 2013 adalah bahawa ia tidak menghasilkan carta pai yang boleh digunakan. Dalam output.xlsx kami dan kod kami, kami sebenarnya telah membuat carta pai (dilakukan di AddChart1) tetapi apabila membuka output.xlsx, Excel 2013 akan mendorong ralat. Jika kita memilih terus, carta pai akan hilang dan hanya carta baris (dilakukan di AddChart2) akan dipelihara. Laporan bug telah difailkan ke repo gitnya.
sekarang lembaran "data" akan kelihatan seperti ini:
Kesimpulan
Dalam artikel ini, kami menunjukkan cara menggunakan php tulen dan php lib tulen (phpexcel) untuk memanipulasi excel. Kami mencipta fail baru, memadamkan data, ditambah dalam lembaran baru dan data analitik, memasukkan carta, dan akhirnya menyimpan fail untuk dimuat turun.
Secara umum, saya dapati phpexcel lib ini patut dicuba dan mudah dipelajari. Wawasan kodnya dalam IDE dapat membantu kita banyak ketika pengaturcaraan.
Kami tidak meliputi ciri -ciri umum lain dalam fail Excel - kami akan menulis artikel susulan mengenai mereka jika minatnya cukup tinggi. Beritahu kami!
Dokumentasi rasminya dan contohnya adalah tempat yang bagus untuk mencari penjelasan penggunaan API terperinci dan coretan kod yang boleh dilaksanakan untuk tugas -tugas yang sama. Bacalah mereka dengan teliti. Mereka boleh didapati di repo klon. Beri perpustakaan ini cuba dan beritahu kami tentang kes penggunaan anda sendiri!
Soalan Lazim (Soalan Lazim) Mengenai Menjana Fail Excel dan Carta dengan PHPExcel
Bagaimana saya boleh memasang phpexcel dalam projek saya?
Untuk memasang phpexcel dalam projek anda, anda perlu menggunakan komposer, alat pengurusan ketergantungan dalam php. Pertama, anda perlu memasang komposer jika anda belum melakukannya. Selepas memasang komposer, navigasi ke direktori projek anda di terminal dan jalankan komposer perintah memerlukan phpoffice/phpexcel. Perintah ini akan memuat turun dan memasang phpexcel dalam projek anda.
Bagaimana saya boleh membuat fail excel asas menggunakan phpexcel?
Untuk membuat fail Excel asas menggunakan phpexcel, anda perlu terlebih dahulu membuat contoh kelas phpexcel. Kemudian, anda boleh menetapkan sifat fail Excel seperti tajuk, keterangan, dan pengarang. Selepas itu, anda boleh menambah data ke fail Excel dengan mengakses sel dan menetapkan nilai mereka. Akhirnya, anda boleh menyimpan fail Excel dengan membuat penulis dan memanggil kaedah simpan.
Bagaimana saya boleh menambah carta ke fail Excel menggunakan phpexcel? Fail Menggunakan PHPExcel, anda perlu terlebih dahulu membuat siri data. Siri data mewakili data yang akan dipaparkan dalam carta. Selepas membuat siri data, anda boleh membuat carta dan menambah siri data kepadanya. Kemudian, anda boleh menetapkan sifat carta seperti tajuk dan legenda. Akhirnya, anda boleh menambah carta ke lembaran kerja dengan memanggil kaedah AddChart.
Bagaimana saya boleh mengendalikan fail excel yang besar menggunakan phpexcel? boleh mencabar kerana batasan memori. Walau bagaimanapun, PHPExcel menyediakan ciri caching sel yang dapat membantu mengurangkan penggunaan memori. Dengan membolehkan caching sel, PHPExcel akan menyimpan data sel dalam cache dan bukannya memori, yang dapat mengurangkan penggunaan memori dengan ketara.
Bagaimana saya boleh menjana PDF dari fail Excel menggunakan phpexcel?
phpexcel menyokong menjana PDF dari fail Excel. Untuk menjana PDF, anda perlu membuat penulis jenis PDF dan hubungi kaedah SAVE. Ambil perhatian bahawa anda perlu mempunyai perpustakaan rendering PDF yang sesuai yang dipasang dalam projek anda.
Bagaimana saya boleh menambah imej ke fail excel menggunakan phpexcel? . Untuk menambah imej, anda perlu membuat objek lukisan, menetapkan laluan imej, dan tentukan koordinat di mana imej harus diletakkan di dalam lembaran kerja.
PHPExcel menggunakan pengecualian untuk mengendalikan kesilapan. Apabila kesilapan berlaku, PHPExcel akan membuang pengecualian. Anda boleh menangkap pengecualian ini menggunakan blok percubaan dan mengendalikannya dengan sewajarnya. Ini membolehkan anda mengawal aliran program anda dan memberikan mesej ralat yang bermakna kepada pengguna.
Atas ialah kandungan terperinci Menjana fail dan carta Excel dengan phpexcel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Sesi rampasan boleh dicapai melalui langkah -langkah berikut: 1. Dapatkan ID Sesi, 2. Gunakan ID Sesi, 3. Simpan sesi aktif. Kaedah untuk mengelakkan rampasan sesi dalam PHP termasuk: 1. Gunakan fungsi Sesi_Regenerate_ID () untuk menjana semula ID Sesi, 2. Data sesi stor melalui pangkalan data, 3.

Fungsi penghitungan dalam Php8.1 meningkatkan kejelasan dan jenis keselamatan kod dengan menentukan pemalar yang dinamakan. 1) Penghitungan boleh menjadi bilangan bulat, rentetan atau objek, meningkatkan kebolehbacaan kod dan keselamatan jenis. 2) Penghitungan adalah berdasarkan kelas dan menyokong ciri-ciri berorientasikan objek seperti traversal dan refleksi. 3) Penghitungan boleh digunakan untuk perbandingan dan tugasan untuk memastikan keselamatan jenis. 4) Penghitungan menyokong penambahan kaedah untuk melaksanakan logik kompleks. 5) Pemeriksaan jenis dan pengendalian ralat yang ketat boleh mengelakkan kesilapan biasa. 6) Penghitungan mengurangkan nilai sihir dan meningkatkan keupayaan, tetapi memberi perhatian kepada pengoptimuman prestasi.

Penerapan prinsip pepejal dalam pembangunan PHP termasuk: 1. Prinsip Tanggungjawab Tunggal (SRP): Setiap kelas bertanggungjawab untuk hanya satu fungsi. 2. Prinsip Terbuka dan Tutup (OCP): Perubahan dicapai melalui lanjutan dan bukannya pengubahsuaian. 3. Prinsip Penggantian Lisch (LSP): Subkelas boleh menggantikan kelas asas tanpa menjejaskan ketepatan program. 4. Prinsip Pengasingan Antara Muka (ISP): Gunakan antara muka halus untuk mengelakkan kebergantungan dan kaedah yang tidak digunakan. 5. Prinsip Inversi Ketergantungan (DIP): Modul peringkat tinggi dan rendah bergantung kepada abstraksi dan dilaksanakan melalui suntikan ketergantungan.

Mengikat statik (statik: :) Melaksanakan pengikatan statik lewat (LSB) dalam PHP, yang membolehkan kelas panggilan dirujuk dalam konteks statik dan bukannya menentukan kelas. 1) Proses parsing dilakukan pada masa runtime, 2) Cari kelas panggilan dalam hubungan warisan, 3) ia boleh membawa overhead prestasi.

Prinsip reka bentuk Restapi termasuk definisi sumber, reka bentuk URI, penggunaan kaedah HTTP, penggunaan kod status, kawalan versi, dan benci. 1. Sumber harus diwakili oleh kata nama dan dikekalkan pada hierarki. 2. Kaedah HTTP harus mematuhi semantik mereka, seperti GET digunakan untuk mendapatkan sumber. 3. Kod status hendaklah digunakan dengan betul, seperti 404 bermakna sumber tidak wujud. 4. Kawalan versi boleh dilaksanakan melalui URI atau header. 5. Boots Operasi Pelanggan Hateoas melalui pautan sebagai tindak balas.

Dalam PHP, pengendalian pengecualian dicapai melalui percubaan, menangkap, akhirnya, dan membuang kata kunci. 1) blok percubaan mengelilingi kod yang boleh membuang pengecualian; 2) Blok tangkapan mengendalikan pengecualian; 3) Akhirnya Blok memastikan bahawa kod itu sentiasa dilaksanakan; 4) Lemparan digunakan untuk membuang pengecualian secara manual. Mekanisme ini membantu meningkatkan keteguhan dan mengekalkan kod anda.

Fungsi utama kelas tanpa nama dalam PHP adalah untuk membuat objek satu kali. 1. Kelas tanpa nama membenarkan kelas tanpa nama ditakrifkan secara langsung dalam kod, yang sesuai untuk keperluan sementara. 2. Mereka boleh mewarisi kelas atau melaksanakan antara muka untuk meningkatkan fleksibiliti. 3. Beri perhatian kepada prestasi dan kebolehbacaan kod apabila menggunakannya, dan elakkan berulang kali menentukan kelas tanpa nama yang sama.
