ข้ามไปเนื้อหาหลัก

druvu-lib-web 2.0.0 เปิดตัว: รันเพจ PHP บน JVM

เฟรมเวิร์กเว็บ Java ขนาดเล็กบน Jetty 12 เปิดตัวเวอร์ชัน 2.0.0 รองรับการประมวลผลเทมเพลต PHP 8 แท้จริงโดยไม่ต้องใช้รันไทม์ PHP

เรียบเรียงโดย AI
Inewgen
15 Aug 2026ที่มา: Dev.to2 นาทีอ่าน (0 ครั้ง)
แชร์
druvu-lib-web 2.0.0 เปิดตัว: รันเพจ PHP บน JVM

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

ขนาดตัวอักษร
  • druvu-lib-web 2.0.0 เปิดตัวอย่างเป็นทางการบน Jetty 12
  • ใช้ภาษาเทมเพลตเป็น PHP 8 แท้ ไม่ใช่แค่คล้ายคลึง
  • ไม่ต้องติดตั้งรันไทม์ PHP บนระบบเซิร์ฟเวอร์ Java
  • ระบบความปลอดภัยตั้งค่า HTML-escaped เป็นค่าเริ่มต้น

เดืนหน้าพัฒนาวงการพัฒนาซอฟต์แวร์อย่างต่อเนื่อง สำหรับนักพัฒนาสาย Java และ PHP เมื่อมีการประกาศปล่อยตัว druvu-lib-web 2.0.0 เฟรมเวิร์กเว็บขนาดเล็กที่ทำงานบน Jetty 12 ซึ่งมาพร้อมความสามารถอันน่าทึ่งในการใช้เทมเพลตเลย์เอาต์เป็นภาษา PHP 8 ของจริง โดยไม่ใช่แค่ภาษาที่มีหน้าตาคล้ายคลึงกันแต่อย่างใด

เครื่องมือเวอร์ชัน 2.0 นี้ถูกออกแบบมาให้รองรับโครงสร้างการทำงานของ PHP 8 ครบถ้วน ไม่ว่าจะเป็นตัวแปร, โครงสร้างการควบคุมทั้งหมด, การแทรกสตริง (string interpolation), heredocs, includes, ฟังก์ชันลูกศร (arrow functions) รวมถึงฟังก์ชันมาตรฐานอีก 115 ฟังก์ชัน โดยผลลัพธ์การเรนเดอร์เทมเพลตทั้งหมดถูกเทียบเคียงผลลัพธ์แบบไบต์ต่อไบต์กับ PHP 8 เพื่อให้มั่นใจในความถูกต้องแม่นยำสูงสุด

software code development technology screen

ภาพประกอบจากคลังภาพสต็อก ไม่ใช่ภาพจากเหตุการณ์จริง

จุดเด่นสำคัญคือระบบทั้งหมดทำงานบนสภาพแวดล้อม Java โดยไม่มีรันไทม์ของ PHP ติดตั้งอยู่เลยแม้แต่น้อย ตัวจัดการคำขอ (handlers) เขียนด้วย Java และตัวแปรจากฝั่งเซิร์ฟเวอร์อย่าง request.setAttribute("customer", customer) จะถูกแปลงให้อัตโนมัติกลายเป็นตัวแปร $customer ภายในหน้าเทมเพลตทันที

ไม่อยากพลาดข่าวใหม่?

สมัครรับสรุปข่าวสารใหม่ทางอีเมล ไม่บ่อยจนรำคาญ

โฆษณา

การรัน PHP บน JVM (Java Virtual Machine) ถือเป็นแนวทางที่น่าสนใจสำหรับสถาปัตยกรรมระบบแบบผสมผสาน ช่วยให้ทีมนักพัฒนาที่เชี่ยวชาญ Java สามารถนำเทมเพลต PHP มาใช้งานร่วมกันได้โดยไม่ต้องย้ายระบบเบื้องหลังทั้งหมด ขณะที่การแปลง HTML-escaped เป็นค่าเริ่มต้นยังช่วยลดช่องโหว่ด้านความปลอดภัยจากการลืมกรองข้อมูลของผู้พัฒนาอีกด้วย

ในแง่ของการเปลี่ยนแปลงที่สำคัญที่สุดจากเวอร์ชัน 1.x คือเรื่องความปลอดภัย โดยในเวอร์ชัน 2.0 นี้ เนื้อหาทั้งหมดจะถูกทำ HTML-escaped โดยอัตโนมัติเป็นค่าเริ่มต้น หากต้องการแสดงผลแบบดิบจะต้องเรียกใช้ฟังก์ชัน raw() เป็นการเฉพาะ เพื่อป้องกันข้อผิดพลาดด้านความปลอดภัยจากการลืมแปลงอักขระพิเศษ

สำหรับนักพัฒนาที่สนใจสามารถเข้าไปศึกษาซอร์สโค้ด เอกสารประกอบ และตัวอย่างโค้ดที่สามารถรันได้ทันทีผ่านทางหน้า GitHub ของโครงการ และหากพบกรณีที่เทมเพลตแสดงผลแตกต่างไปจาก PHP ของจริง ผู้พัฒนาได้ระบุไว้ชัดเจนว่าเป็นบั๊กที่ต้องได้รับการแก้ไข

ที่มา: Dev.to

ความคิดเห็น

แสดงความคิดเห็น
0/2000

พบข้อมูลผิดพลาดในบทความนี้? แจ้งปัญหาบทความนี้