KPHP เป็นคอมไพเลอร์ PHP โดยรวบรวมชุดย่อยที่จำกัดของ PHP ให้เป็นไบนารีดั้งเดิมที่ทำงานเร็วกว่า PHP
KPHP ได้รับการพัฒนาที่ VK.com และคงไว้ซึ่งกรรมสิทธิ์เป็นเวลาหลายปี — จนกระทั่งเป็นโอเพ่นซอร์สในปลายปี 2020
เยี่ยมชมเว็บไซต์ KPHP พร้อมด้วยเอกสาร การสาธิต ฯลฯ
KPHP จะไม่รวบรวมโค้ด PHP แบบสุ่มใดๆ:
ไม่รองรับฟีเจอร์ที่ไม่สามารถคอมไพล์ได้ เช่น การโทรตามชื่อหรือการเยาะเย้ย
มันจะไม่คอมไพล์โค้ดที่ทำลายระบบประเภท เช่น การผสมตัวเลขและอ็อบเจ็กต์ในอาร์เรย์
ไม่มีฟีเจอร์ PHP ที่ VK.com ไม่เคยต้องการ เช่น คลาส SPL และการแยกวิเคราะห์ XML
รายละเอียดไวยากรณ์ PHP บางอย่างไม่ได้ถูกนำมาใช้ เช่น ตัวสร้างและคลาสที่ไม่ระบุชื่อ
อ่านเพิ่มเติมได้ที่นี่: ความแตกต่างระหว่าง KPHP กับ PHP
KPHP วิเคราะห์โค้ดของคุณโดยรวมและดำเนินการปรับแต่งต่างๆ โดยเน้นที่ประสิทธิภาพและความปลอดภัย:
การอนุมานประเภทของตัวแปรทั้งหมด วิธีการประกาศตัวแปรเหล่านั้นในภาษา C++
การเพิ่มประสิทธิภาพเวลาคอมไพล์ เช่น inline getters หรือลดการกระพือของผู้อ้างอิง
การตรวจสอบเวลาคอมไพล์ รวมถึงข้อกำหนดของระบบที่ไม่เปลี่ยนรูปและประเภท
การเพิ่มประสิทธิภาพรันไทม์ เช่น เวกเตอร์ที่เริ่มต้นและพิมพ์อาร์เรย์คงที่
นอกเหนือจากที่กล่าวมาข้างต้น KPHP ยังมีโครูทีน อย่างไรก็ตาม ในตอนนี้ นอกโค้ด VK แทบจะไม่สามารถนำไปใช้ได้
โดยทั่วไป เมื่อโค้ดของคุณสอดคล้องกับแนวปฏิบัติที่ดีที่สุด มันจะรัน เร็วกว่า PHP 3–10 เท่า
ดู หน้าเกณฑ์มาตรฐาน เปรียบเทียบประสิทธิภาพของ KPHP และ PHP
คุณยังสามารถอ้างถึง PHP กับ KPHP กับ C++ ได้
KPHP ไม่ได้เร็วกว่า PHP เสมอไป แต่สามารถใช้เพื่อเร่งความเร็วโค้ดของคุณได้โดยเน้นที่การพิมพ์ที่เข้มงวดและฟังก์ชันในตัวของ KPHP
สถานการณ์นี้ค่อนข้างบ่อย KPHP ไม่ค่อยคอมไพล์โค้ดที่มีอยู่แล้วโดยไม่มีข้อผิดพลาด โดยปกติจะใช้เวลาสักระยะในการเขียนโค้ด PHP ใหม่เพื่อให้สามารถคอมไพล์ด้วย KPHP ได้
อ่านเพิ่มเติมเกี่ยวกับสิ่งนี้ในการรวบรวมโปรเจ็กต์ที่มีอยู่
KPHP เผยแพร่ภายใต้ใบอนุญาต GPLv3 ในนามของ VK.com (V Kontakte LLC)
หากต้องการสื่อสารกับชุมชน KPHP ให้ใช้ปัญหา GitHub หรือการแชททางโทรเลข
คุณสามารถดูหน้าคำถามที่พบบ่อยและหน้าแผนงานของเราได้ด้วย
โปรดดูที่หน้าการบริจาค
ดำเนินการไปที่หน้าการติดตั้งและทำตามเมนูด้านซ้าย