Rumah >pembangunan bahagian belakang >tutorial php >Tinju aplikasi anda sebagai Phar dengan cepat dan mudah dengan kotak

Tinju aplikasi anda sebagai Phar dengan cepat dan mudah dengan kotak

Jennifer Aniston
Jennifer Anistonasal
2025-02-17 11:22:09182semak imbas

Tutorial ini menunjukkan pembungkusan aplikasi PHP ke dalam kotak menggunakan kotak, memudahkan pengedaran dan pemasangan global melalui komposer. Kami akan menggunakan Webiny's FolderBuilder (alat untuk merancang struktur folder projek secara interaktif) sebagai contoh kami.

Boxing up your Apps as Phars Quickly and Easily with Box

Konsep Utama:

    Box Streamlines PHAR Penciptaan untuk penyebaran aplikasi PHP yang mudah dan integrasi komposer.
  • Fail
  • mentakrifkan kandungan phar (fail, titik masuk, nama fail output, dan lain -lain). Perintah box.json membina phar. Menambah box ke chmod membuat phar boleh dilaksanakan. box.json
  • medan
  • komposer dalam bin membolehkan pengedaran Phar sebagai alat baris arahan global (memerlukan muat naik pembungkus). composer.json

Persediaan Projek:

Kami akan menggunakan skrip PHP FolderBuilder, yang menghasilkan perwakilan JSON struktur projek. Walaupun mudah dijalankan secara langsung, membungkusnya sebagai phar meningkatkan kebolehgunaan:

<code class="language-bash">composer global require webiny/folderbuilder
folderbuilder . > structure.json</code>

Penciptaan projek kotak:

Pertama, pasang kotak:

<code class="language-bash">composer global require kherge/box</code>
Seterusnya, Clone dan Checkout FolderBuilder:

<code class="language-bash">cd ~
git clone https://github.com/webiny/folderbuilder
cd folderbuilder
git checkout 74b234fa33bd69690a2c26df38ef7d188c4e69eb</code>
Buat

: box.json

<code class="language-json">{
  "files": ["structure.php", "bin/stub.php"],
  "output": "bin/wfb.phar",
  "stub": true,
  "main": "bin/stub.php",
  "chmod": "0755",
  "compactors": ["Herrera\Box\Compactor\Json", "Herrera\Box\Compactor\Php"]
}</code>
ini

menentukan fail, laluan output, stub, titik kemasukan, keizinan yang boleh dilaksanakan, dan pemadat untuk saiz phar yang lebih kecil. Jalankan: box.json

<code class="language-bash">box build -v</code>
Kemudian, tukar nama dan ujian:

<code class="language-bash">mv bin/wfb.phar bin/wfb
bin/wfb</code>

Pengagihan dengan komposer:

tambah entri

ke bin: composer.json

<code class="language-json">"bin": ["bin/wfb"]</code>
Muat naik projek ke Packagist.

Menguji pemasangan global:

Buat persekitaran baru (mis., Homestead segar bertambah baik) dan jalankan:

<code class="language-bash">composer global require webiny/folderbuilder
wfb ~/Code > out.json</code>
Ini mengesahkan fungsi Phar yang dipasang di seluruh dunia.

Boxing up your Apps as Phars Quickly and Easily with Box

Kesimpulan:

Tutorial ini terperinci mencipta dan mengedarkan phar phar menggunakan kotak, meningkatkan penggunaan aplikasi dan kebolehgunaan. Peningkatan selanjutnya boleh melibatkan penandatanganan phar dan mekanisme auto-update. FolderBuilder mengalu -alukan sumbangan untuk memperluaskan ciri -cirinya.

Soalan Lazim (Soalan Lazim) Mengenai Aplikasi Tinju dan Phars:

(Bahagian ini masih tidak berubah dari input, kerana ia adalah bahagian FAQ yang berguna dan relevan.) Apakah tujuan utama menggunakan phars dalam php?

Phars, atau arkib PHP, pakej keseluruhan aplikasi PHP ke dalam satu fail untuk pengedaran dan pemasangan yang mudah. Mereka sama dengan fail balang Java, memudahkan penggunaan dengan menyatukan semua komponen yang diperlukan.

bagaimana saya membuat fail phar?

kelas Phar dalam PHP memudahkan penciptaan phar. Anda memberi instantiasi kelas, menambah fail menggunakan addFile, dan simpan menggunakan stopBuffering. Stub (skrip kecil yang dilaksanakan pada pelaksanaan Phar) juga boleh ditetapkan.

Apakah faedah menggunakan aplikasi tinju seperti projek-projek?

Aplikasi tinju mengautomasikan penciptaan phar, menyelaraskan proses pengedaran. Ciri -ciri seperti integrasi git dan komposer meningkatkan kecekapan aliran kerja.

bagaimana saya menggunakan projek kotak untuk membuat fail phar?

Pasang projek-projek, buat arahan pembungkusan yang menentukan box.json, dan gunakan perintah box untuk menghasilkan phar. Pilihan untuk konfigurasi mampatan dan stub disediakan.

Bolehkah saya menggunakan Phar dengan aplikasi web?

Ya, Phars berfungsi sebagai aplikasi PHP biasa apabila diakses melalui pelayan web. Walau bagaimanapun, pastikan pelayan web anda dikonfigurasikan untuk melaksanakan fail phar.

Adakah terdapat kebimbangan keselamatan dengan menggunakan phars?

Gunakan phars dari sumber yang dipercayai dan pastikan mereka dikemas kini. Tetapan PHP phar.readonly dan phar.require_hash meningkatkan keselamatan.

bagaimana saya mengemas kini fail phar?

Buat phar baru dengan kemas kini dan gantikan yang lama. Ini boleh automatik atau dilakukan secara manual.

Bolehkah saya menggunakan Phar dengan kerangka php?

Ya, banyak kerangka menyokong Phars, yang membolehkan anda membungkus permohonan anda, termasuk rangka kerja, ke dalam satu fail.

Apakah perbezaan antara projek kotak dan kotak-kotak 2?

Box-Project 2 menawarkan penambahbaikan ke atas asal, termasuk sokongan komposer, pengendalian ralat yang lebih baik, dan peningkatan prestasi.

bagaimana saya menyelesaikan masalah dengan phars?

Semak log ralat PHP, uji pada sistem yang berbeza, dan sahkan konfigurasi PHP yang betul. Isu Kebenaran Fail juga biasa.

Atas ialah kandungan terperinci Tinju aplikasi anda sebagai Phar dengan cepat dan mudah dengan kotak. 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