mentakrifkan satu siri tugas yang boleh dilaksanakan bersama. Setiap tugas diwakili oleh tag XML tertentu seperti untuk menjalankan proses phing berasingan di latar belakang. Anda boleh menentukan tugas untuk membungkus aplikasi, memuat naiknya ke pelayan, dan melaksanakan sebarang tugas persediaan yang diperlukan. Pembolehubah boleh ditetapkan dari fail sifat, dari baris arahan, atau dari persekitaran. Anda boleh mengkonfigurasi proses penjanaan dokumentasi dengan menentukan direktori sumber dan destinasi, format output, dan pilihan lain.
Takeaways Key
Phing adalah alat membina projek PHP berdasarkan Apache Ant. Sistem binaan membantu anda melakukan sekumpulan tindakan menggunakan satu arahan. Jika anda tertanya -tanya mengapa PHP memerlukan alat binaan, pertimbangkan aliran kerja di mana anda menulis kod dan ujian unit pada mesin tempatan anda, dan jika ujian lulus anda memuat naik kod ke pelayan pementasan/pengeluaran dan membuat sebarang perubahan pada pangkalan data pengeluaran. Tanpa fail membina, anda perlu melalui setiap langkah secara manual. Jika anda melakukan integrasi berterusan, anda akan melakukan langkah yang sama berulang kali. Ia terlalu mudah untuk secara tidak sengaja menghilangkan sesuatu dalam proses dan berakhir dengan masalah serius dalam pengeluaran. Phing membantu mengatasi isu -isu tersebut dengan mengautomasikan tugas -tugas seperti menjalankan ujian unit, menggunakan perubahan pangkalan data, menggunakan kod aplikasi, dan lain -lain. Dalam artikel ini saya akan menunjukkan kepada anda beberapa asas bekerja dengan phing.
Jika anda tidak memilikinya, anda boleh memasang phing menggunakan pir:
shameer@yukon:~$ sudo pear channel-discover pear.phing.info
shameer@yukon:~$ sudo pear install phing/phing
Jika anda ingin menggunakan tugas seperti phpunit atau phpdocumentor maka anda juga perlu memasang pakej bergantung.
Phing Hello World
Untuk menunjukkan kepada anda betapa mudahnya untuk membuat fail membina untuk phing, mari kita mulakan dengan fail membina "hello dunia". Mula -mula buat direktori projek anda, dan kemudian di dalamnya membuat fail bernama Build.xml dengan kandungan berikut:
<span><?xml version="1.0" encoding="UTF-8"?>
</span><span><span><span><project</span> name<span>="HelloWorld"</span> default<span>="welcome"</span> basedir<span>="."</span> description<span>="a demo project"</span>></span>
</span> <span><span><span><property</span> name<span>="message"</span> value<span>="Hello World!"</span>/></span>
</span> <span><span><span><target</span> name<span>="welcome"</span>></span>
</span> <span><span><span><echo</span> msg<span>="${message}"</span>/></span>
</span> <span><span><span></target</span>></span>
</span><span><span><span></project</span>></span></span>
Dari baris arahan, navigasi ke dalam direktori dan jalankan phing.
shameer@yukon:~/HelloWorld$ phing
Buildfile: /home/shameer/HelloWorld/build.xml
HelloWorld > welcome:
[echo] Hello World!
BUILD FINISHED
Total time: 0.2275 seconds
Elemen shameer@yukon:~$ sudo pear channel-discover pear.phing.info
shameer@yukon:~$ sudo pear install phing/phing
Anda juga boleh memanggil sasaran selain daripada lalai dengan menyediakan satu atau lebih nama sasaran dalam baris arahan:
<span><?xml version="1.0" encoding="UTF-8"?>
</span><span><span><span><project</span> name<span>="HelloWorld"</span> default<span>="welcome"</span> basedir<span>="."</span> description<span>="a demo project"</span>></span>
</span> <span><span><span><property</span> name<span>="message"</span> value<span>="Hello World!"</span>/></span>
</span> <span><span><span><target</span> name<span>="welcome"</span>></span>
</span> <span><span><span><echo</span> msg<span>="${message}"</span>/></span>
</span> <span><span><span></target</span>></span>
</span><span><span><span></project</span>></span></span>
Pelbagai sasaran
Mari kita meminda skrip binaan dan tambahkan sasaran tambahan. Demi contoh, saya akan menganggap struktur direktori berikut disediakan untuk projek itu:
Kemas kini Build.xml
Jadi sekarang kelihatan seperti ini:
shameer@yukon:~/HelloWorld$ phing
Buildfile: /home/shameer/HelloWorld/build.xml
HelloWorld > welcome:
[echo] Hello World!
BUILD FINISHED
Total time: 0.2275 seconds
Ringkasan imej melalui dino o / shutterstock
Soalan Lazim (Soalan Lazim) Mengenai Menggunakan Phing Apakah struktur asas fail membina phing?
Fail membina phing adalah fail XML yang mentakrifkan tugas yang akan dilaksanakan. Ia bermula dengan tag
yang merangkumi atribut seperti nama, lalai, dan berasaskan. Tag Bagaimana saya boleh menggunakan phing untuk integrasi berterusan?
phing boleh digunakan dalam integrasi berterusan untuk mengautomasikan proses binaan dan penempatan. Anda boleh menentukan tugas untuk kod linting, ujian unit, menjana dokumentasi, membungkus kod, dan menggunakannya ke pelayan. Tugas -tugas ini boleh dicetuskan secara automatik apabila terdapat perubahan dalam repositori kod. dalam fail binaan untuk mendaftarkan tugas. Phing menggunakan XML untuk fail membina seperti ANT, tetapi ia mempunyai tugas terbina dalam operasi khusus PHP seperti menjalankan ujian phpunit atau menghasilkan dokumentasi phpdocumentor. Sebaliknya, Maven menggunakan pendekatan konvensyen-overfiguration dan mempunyai kitaran hayat yang lebih kompleks. Anda boleh menggunakan tugas
untuk menghentikan proses membina jika keadaan tertentu dipenuhi. Anda juga boleh menggunakan tugas untuk menangkap pengecualian dan mengendalikannya dengan sewajarnya. Di samping itu, anda boleh mengkonfigurasi tahap pembalakan untuk mengawal jumlah maklumat yang dipaparkan apabila ralat berlaku. Anda boleh menentukan tugas untuk mengendalikan operasi khusus kerangka seperti menjalankan migrasi atau membenamkan pangkalan data. Walau bagaimanapun, anda boleh mencapai ini dengan menggunakan tugas
Atas ialah kandungan terperinci Menggunakan phing, alat binaan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

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

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

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)

Masalah dan penyelesaian biasa untuk skop pembolehubah PHP termasuk: 1. Pembolehubah global tidak dapat diakses dalam fungsi, dan ia perlu diluluskan menggunakan kata kunci atau parameter global; 2. Pembolehubah statik diisytiharkan dengan statik, dan ia hanya dimulakan sekali dan nilai dikekalkan antara pelbagai panggilan; 3. Pembolehubah hyperglobal seperti $ _get dan $ _post boleh digunakan secara langsung dalam mana -mana skop, tetapi anda perlu memberi perhatian kepada penapisan yang selamat; 4. Fungsi Anonymous perlu memperkenalkan pembolehubah skop induk melalui kata kunci penggunaan, dan apabila mengubah suai pembolehubah luaran, anda perlu lulus rujukan. Menguasai peraturan ini boleh membantu mengelakkan kesilapan dan meningkatkan kestabilan kod.

Untuk mengendalikan muat naik fail PHP dengan selamat, anda perlu mengesahkan sumber dan jenis, mengawal nama fail dan laluan, menetapkan sekatan pelayan, dan memproses fail media dua kali. 1. Sahkan sumber muat naik untuk mengelakkan CSRF melalui token dan mengesan jenis mime sebenar melalui finfo_file menggunakan kawalan putih; 2. Namakan semula fail ke rentetan rawak dan tentukan pelanjutan untuk menyimpannya dalam direktori bukan web mengikut jenis pengesanan; 3. Konfigurasi PHP mengehadkan saiz muat naik dan direktori sementara Nginx/Apache melarang akses ke direktori muat naik; 4. Perpustakaan GD menyambung semula gambar -gambar untuk membersihkan data yang berpotensi.

Terdapat tiga kaedah umum untuk kod komen PHP: 1. Use // atau # untuk menyekat satu baris kod, dan disyorkan untuk menggunakan //; 2. Gunakan /.../ untuk membungkus blok kod dengan pelbagai baris, yang tidak boleh bersarang tetapi boleh diseberang; 3. Komen -komen kemahiran gabungan seperti menggunakan / jika () {} / untuk mengawal blok logik, atau untuk meningkatkan kecekapan dengan kunci pintasan editor, anda harus memberi perhatian kepada simbol penutupan dan mengelakkan bersarang apabila menggunakannya.

Kunci untuk menulis komen PHP adalah untuk menjelaskan tujuan dan spesifikasi. Komen harus menjelaskan "mengapa" dan bukannya "apa yang dilakukan", mengelakkan redundansi atau terlalu kesederhanaan. 1. Gunakan format bersatu, seperti docblock (/*/) untuk deskripsi kelas dan kaedah untuk meningkatkan keserasian dan keserasian alat; 2. Menekankan sebab -sebab di sebalik logik, seperti mengapa JS melompat perlu dikeluarkan secara manual; 3. Tambahkan gambaran keseluruhan gambaran sebelum kod kompleks, terangkan proses dalam langkah -langkah, dan membantu memahami idea keseluruhan; 4. Gunakan Todo dan Fixme secara rasional untuk menandakan item dan masalah untuk memudahkan penjejakan dan kerjasama berikutnya. Anotasi yang baik dapat mengurangkan kos komunikasi dan meningkatkan kecekapan penyelenggaraan kod.

Ageneratorinphpisamemory-efficientwaytoiterateOverlargedatasetsbyieldingvaluesonateatimeNsteadofreturningthemallatonce.1.GeneratorSuseTheyEldeyWorderWorderToProducevaluuesondemand,

Tolearnphpeffectively, startbysettingupalocalverenvironmentusingToolsLikexamppandaCodeDitorLikevscode.1) InstallXamppforapa Che, MySql, danPhp.2) UseAcodeeditorForsyntaxSupport.3) testyoursetupwithasimplephpfile.next, learnphpbasicsincludingvariables, ech

Toinstallphpquickly, usexampponwindowsorhomeBrewonmacos.1.onwindows, downloadandInstallxampp, selectcomponents, startapache, andplaceFilesinhtdocs.2.alternative, secara manualstallphpfromphp.netandsheBerver.3

Dalam PHP, anda boleh menggunakan kurungan persegi atau pendakap keriting untuk mendapatkan aksara indeks spesifik rentetan, tetapi kurungan persegi disyorkan; Indeks bermula dari 0, dan akses di luar julat mengembalikan nilai null dan tidak dapat diberikan nilai; MB_SUBSTR dikehendaki mengendalikan watak multi-bait. Sebagai contoh: $ str = "hello"; echo $ str [0]; output h; dan watak -watak Cina seperti MB_SUBSTR ($ str, 1,1) perlu mendapatkan hasil yang betul; Dalam aplikasi sebenar, panjang rentetan perlu diperiksa sebelum gelung, rentetan dinamik perlu disahkan untuk kesahihan, dan projek berbilang bahasa mengesyorkan menggunakan fungsi keselamatan multi-bait secara seragam.
