KPHP adalah kompiler PHP. Ini mengkompilasi subset terbatas PHP ke biner asli yang berjalan lebih cepat dari PHP.
KPHP dikembangkan di VK.com dan dipertahankan sebagai hak milik selama bertahun-tahun — hingga dijadikan sumber terbuka pada akhir tahun 2020.
Kunjungi website KPHP dengan dokumentasi, demo, dll.
KPHP tidak akan mengkompilasi sembarang kode PHP acak:
Itu tidak mendukung fitur yang tidak dapat dikompilasi, seperti memanggil dengan nama atau tiruan.
Itu tidak akan mengkompilasi kode, yang merusak sistem tipe, misalnya, mencampurkan angka dan objek dalam sebuah array.
Ia tidak memiliki fitur PHP yang tidak diperlukan oleh VK.com, seperti kelas SPL dan penguraian XML.
Beberapa detail sintaksis PHP tidak diterapkan, seperti generator dan kelas anonim.
Baca selengkapnya di sini: Perbedaan KPHP vs PHP.
KPHP menganalisis kode Anda secara keseluruhan dan melakukan berbagai optimasi dengan fokus pada kinerja dan keamanan:
Menyimpulkan tipe semua variabel, cara mendeklarasikannya di C++.
Pengoptimalan waktu kompilasi, seperti memasukkan pengambil atau mengurangi refcounter yang mengepak.
Pemeriksaan waktu kompilasi, termasuk kekekalan dan jenis persyaratan sistem.
Pengoptimalan waktu proses, seperti pra-inisiasi array konstan dan vektor yang diketik.
Selain di atas, KPHP juga memiliki coroutine. Namun, untuk saat ini, hal tersebut hampir tidak dapat diterapkan di luar kode VK.
Umumnya, jika kode Anda sesuai dengan praktik terbaik, kode tersebut akan berjalan 3–10 kali lebih cepat dibandingkan PHP .
Lihatlah halaman benchmark yang membandingkan kinerja KPHP dan PHP.
Anda juga bisa merujuk ke PHP vs KPHP vs C++ .
KPHP tidak selalu lebih cepat dari PHP, tetapi KPHP dapat digunakan untuk mempercepat kode Anda dengan berfokus pada pengetikan yang ketat dan fungsi bawaan KPHP.
Situasi ini cukup umum terjadi. KPHP jarang mengkompilasi kode yang sudah ada tanpa kesalahan. Biasanya diperlukan waktu beberapa saat untuk menulis ulang kode PHP agar dapat dikompilasi dengan KPHP.
Baca lebih lanjut tentang ini dalam kompilasi proyek yang sudah ada.
KPHP didistribusikan di bawah lisensi GPLv3, atas nama VK.com (V Kontakte LLC).
Untuk berkomunikasi dengan komunitas KPHP, gunakan GitHub issue atau chat Telegram.
Anda juga dapat melihat halaman FAQ dan halaman Roadmap kami.
Silakan merujuk ke halaman Berkontribusi.
Lanjutkan ke halaman instalasi dan ikuti saja menu sebelah kiri.