AccuWebHosting เปิดตัว PHP 7 Hosting
เผยแพร่แล้ว: 2015-12-07ทีมพัฒนา PHP ยุติการรอคอยอันยาวนานของ WebMaster โดยประกาศความพร้อมใช้งานทันทีของ PHP 7 PHP 7 ซึ่งเป็นเวอร์ชันถัดไปของภาษาสคริปต์ที่ได้รับความนิยมมากที่สุดในโลก (ขับเคลื่อน 81% ของเว็บ) ในที่สุดก็เปิดตัวในวันที่ 3 ธันวาคม 2015
หลังจากแปดปีกว่าจะเสร็จสมบูรณ์และล่าช้าหลายสัปดาห์ในการเปิดตัว ในที่สุด PHP 7 ก็พร้อมให้ดาวน์โหลดแล้ว ผู้ใช้ Windows สามารถดาวน์โหลดไบนารี PHP 7 Windows ได้จากที่นี่ ด้วย PHP เวอร์ชันล่าสุด มีการเปลี่ยนแปลงที่แนะนำมากมาย ดังนั้น PHP 7 จึงไม่สามารถใช้งานร่วมกับโค้ดดั้งเดิมของ PHP 4 แบบย้อนหลังได้ แม้ว่าควรทำงานได้อย่างราบรื่นกับโค้ด PHP 5.x หากต้องการตรวจสอบการเปลี่ยนแปลงที่แนะนำใน PHP 7 ให้อ้างอิงกับบันทึกการเปลี่ยนแปลง
ประโยชน์หลักของ PHP 7
PHP 7 มีการแก้ไขไวยากรณ์น้อยที่สุดและให้ความสำคัญกับการปรับปรุงประสิทธิภาพมากขึ้น ในช่วงไม่กี่เดือนที่ผ่านมา มีการวัดประสิทธิภาพจำนวนหนึ่งบน PHP 7 และมีการอ้างว่า PHP 7 นั้นเร็วกว่ารุ่นก่อนเกือบ 200% (PHP 5.x)
PHP 7 จะทำงานบนเอ็นจิ้นล่าสุดคือ PHPNG (PHP Next Generation) แข่งขันกับล่ามอย่าง HHVM จาก Facebook HHVM มีประสิทธิภาพเหนือกว่า PHP มาหลายปีแล้ว ซึ่งสนับสนุนให้ทีมนักพัฒนา PHP 7 พัฒนาความสามารถ ขอบคุณ PHPNG ตอนนี้เอ็นจิ้นหลักของ PHP 7 ได้รับการปรับให้เหมาะสมยิ่งขึ้นสำหรับ CPU และหน่วยความจำ
ตามเกณฑ์มาตรฐานที่ดำเนินการบน PHP 7 เอ็นจิ้น PHPNG จะแบ่งหน่วยความจำและการใช้งาน CPU ลงครึ่งหนึ่งเมื่อเทียบกับรุ่น 5.6 ล่าสุด
เราจะพูดถึงคุณลักษณะใหม่ที่น่าตื่นเต้นที่สุดบางส่วนที่จะพร้อมใช้งานเมื่อคุณอัปเกรดเป็น PHP 7
ผู้ประกอบการใหม่
PHP 7 มาพร้อมกับโอเปอเรเตอร์ใหม่สองตัว ได้แก่ ยานอวกาศ (หรือตัวดำเนินการเปรียบเทียบแบบรวม) และตัวดำเนินการ รวมค่า null
ตัวดำเนินการ ยานอวกาศ ( <=> ) ใช้เพื่อทำให้การเปรียบเทียบแบบล่ามโซ่ของคุณกระชับยิ่งขึ้น ตัวอย่างเช่น:
$var1 <=> $var2
นิพจน์นี้ได้รับการประเมินเป็น:
-1 ถ้า $var1 น้อยกว่า $var2 0 ถ้า $var1 เท่ากับ $var2 และ 1 ถ้า $var1 มากกว่า $var2
ซึ่งโดยพื้นฐานแล้วเป็นทางลัดสำหรับนิพจน์ต่อไปนี้:
($var1 < $var2) ? -1 : (($var1 > $var2) ? 1 : 0)
ตัวดำเนินการ รวมค่า null ( ?? ) สามารถใช้เป็นทางลัดสำหรับกรณีการใช้งานทั่วไปได้ ตัวอย่างเช่น ด้วย PHP 5.x คุณจะทำสิ่งนี้:
$var1 = isset($var2) ? $var2 : "ค่าเริ่มต้น";
นิพจน์เดียวกันสามารถเขียนด้วยตัวดำเนินการรวมค่า null ใน PHP 7 ได้ดังนี้:
$var1 = $var2 ?? "ค่าเริ่มต้น";
คำแนะนำประเภทสเกลาร์
คำแนะนำประเภทสเกลาร์เป็นหนึ่งในคุณสมบัติที่โดดเด่นที่สุดของ PHP เวอร์ชันล่าสุด คุณสามารถใช้จำนวนเต็ม ทุ่น สตริง และบูลีนเป็นคำแนะนำประเภทสำหรับฟังก์ชันและวิธีการ กล่าวอีกนัยหนึ่ง เมื่อคุณส่งค่าทศนิยมไปยังพารามิเตอร์จำนวนเต็ม คำแนะนำประเภทสเกลาร์จะบังคับให้เป็นจำนวนเต็มโดยไม่สร้างข้อผิดพลาดหรือคำเตือนใดๆ อย่างไรก็ตาม เมื่อเปิดใช้งานโหมดเข้มงวด จะเกิดข้อผิดพลาดเมื่อมีการส่งประเภทที่ไม่ถูกต้องเป็นอาร์กิวเมนต์
<?php ฟังก์ชั่นสองเท่า (int $value) { คืนค่า 2 * $ ค่า; } $var = สองเท่า ("8"); var_dump($var);
รหัสด้านบนจะไม่สร้างข้อผิดพลาดใดๆ เมื่อปิดใช้งานโหมดเข้มงวด นอกจากนี้ สตริง "8" ที่ส่งผ่านเป็นอาร์กิวเมนต์จะถูกบังคับให้เป็นจำนวนเต็มภายในฟังก์ชันคู่ หากเราเปิดใช้งานโหมดเข้มงวดโดยใส่คำสั่งประกาศ (strict_types = 1) ในบรรทัดแรกสุดในโค้ดด้านบน เฉพาะจำนวนเต็มเท่านั้นที่จะสามารถส่งผ่านไปยังฟังก์ชันคู่ได้
< ?php ประกาศ (strict_types = 1); ฟังก์ชั่นสองเท่า (int $value) { คืนค่า 2 * $ ค่า; } $var = สองเท่า ("8"); var_dump($var);
เมื่อเปิดใช้งานโหมดเข้มงวด โค้ดด้านบนจะทำให้เกิดข้อผิดพลาดร้ายแรง
กลับประเภทคำแนะนำ
Return Type Hints ให้คุณกำหนดประเภทการส่งคืนของเมธอดและฟังก์ชัน มันทำงานในลักษณะเดียวกับคำแนะนำประเภทสเกลาร์ในแง่ของการบีบบังคับและโหมดเข้มงวด:
< ?php ฟังก์ชัน a() : bool { ส่งคืน 1; } var_dump(a());
เมื่อดำเนินการโค้ดข้างต้น ค่าที่ส่งคืนจะถูกแปลงเป็นบูลโดยอัตโนมัติโดยไม่มีข้อผิดพลาดและคำเตือน เมื่อเปิดใช้งานโหมดเข้มงวด จะเกิดข้อผิดพลาดร้ายแรง
HHVM เทียบกับ PHP 7
HHVM เป็นเครื่องเสมือนที่สร้างโดยนักพัฒนา Facebook เพื่อเรียกใช้แอปพลิเคชัน PHP ในปี 2008 ทีมงาน Facebook ได้พัฒนาเครื่องมือในการแปลงสคริปต์ PHP เป็น C++ เพื่อให้สามารถคอมไพล์และดำเนินการบนเว็บเซิร์ฟเวอร์ได้ เป้าหมายหลักคือการลดการใช้ทรัพยากรเซิร์ฟเวอร์และเพื่อรองรับการรับส่งข้อมูลมากกว่าความจุจริงของเซิร์ฟเวอร์ห้าถึงหกเท่า เพื่อเอาชนะความท้าทายเหล่านี้ Facebook ได้พัฒนา HipHop Virtual Machine (HHVM) การเปลี่ยนแปลงนี้เพิ่มความจุของเซิร์ฟเวอร์เพื่อรองรับการเข้าชมเว็บที่เพิ่มขึ้น 500-600%
ณ จุดนี้ คุณอาจถามว่า: "อะไรทำให้ HHVM เร็วมาก"
แทนที่จะคอมไพล์โค้ด PHP เป็น C++ HHVM ใช้การรวบรวม Just-In-Time (JIT) เพื่อแปลงโค้ด PHP เป็นไบต์โค้ดระดับกลาง bytecode นี้จะถูกแปลเพิ่มเติมเป็นรหัสเครื่อง x64 ตอนนี้คอมไพเลอร์ JIT เข้ามาในรูปภาพ โดยเรียกใช้การแปลแบบไดนามิกขณะรันไทม์ ซึ่งช่วยให้สามารถเพิ่มประสิทธิภาพได้ทั้งหมด ส่งผลให้ประสิทธิภาพของแอปพลิเคชัน PHP ของคุณเพิ่มขึ้นอย่างมาก
PHP 7 หรือ PHPNG เป็นคู่แข่งที่แท้จริงและการตอบสนองของชุมชนต่อ HipHop Virtual Machine HHVM มีประสิทธิภาพเหนือกว่า PHP รุ่นก่อนอย่างชัดเจน แต่การทดสอบเกณฑ์มาตรฐานล่าสุดแนะนำว่า PHP 7 นั้นเร็วกว่า HHVM เล็กน้อยในบางสถานการณ์ มาดูผลการทดสอบเกณฑ์มาตรฐานที่ดำเนินการโดย ZEND ในแอปยอดนิยมบางแอป เช่น WordPress, Magento และ Drupal:
Magento HHVM 3.7 เทียบกับ PHP 7
จากแผนภูมิด้านล่าง คุณสามารถสร้างคำขอเซิร์ฟเวอร์แคตตาล็อก Magento ได้มากถึง 3 เท่าบนฮาร์ดแวร์เดียวกัน และ PHP 7 ใช้หน่วยความจำน้อยลง 30%
ที่มา : www.zend.com
WordPress HHVM 3.7 กับ PHP 7
จากผลลัพธ์ที่แสดง ไม่มีความแตกต่างมากนักระหว่าง HHVM 3.7 และ PHP 7 ข้อเท็จจริงที่น่าสนใจที่สุดคือ PHP 7 ใช้เพียง 25% ของการดำเนินการเซิร์ฟเวอร์เมื่อเทียบกับ PHP 5.6 ดังนั้นเซิร์ฟเวอร์ที่มีความจุเท่ากันจะสามารถให้บริการผู้ใช้จำนวนมากขึ้น
ที่มา: www.zend.com
Drupal HHVM 3.7 เทียบกับ PHP 7
แผนภูมิระบุว่า PHP 7 นั้นเร็วกว่า HVVM อย่างมาก และที่น่าสนใจคือ Drupal 8 ทำงานเร็วขึ้น 72% บน PHP 7 เมื่อเทียบกับ PHP 5.6
ที่มา: www.zend.com
เกณฑ์มาตรฐานอื่นๆ
คุณยังสามารถอ้างถึงการวัดประสิทธิภาพที่ดำเนินการโดย Rasmus Lerdorf ที่ PHP Australia ใช้แป้นลูกศรเพื่อเลื่อนดูสไลด์
ฉันควรไปกับอะไร
ก่อน PHP 7 หรือ PHPNG นั้น HHVM นั้นเร็วกว่าแพ็คเกจ PHP-Zend อย่างแน่นอนสำหรับ PHP ทุกรุ่น PHP 7 ได้แสดงให้เห็นประสิทธิภาพที่ดีขึ้นเมื่อเทียบกับ HHVM สำหรับสคริปต์ส่วนใหญ่ในเกณฑ์มาตรฐานส่วนใหญ่
เว็บไซต์ขนาดใหญ่ เช่น Etsy และ Wikimedia Foundation ใช้ HHVM แต่ต้องใช้เวลามากกว่าหกเดือนในการเปลี่ยนจากแพ็คเกจ PHP-Zend เป็นแพ็คเกจ PHP-HHVM อย่างสมบูรณ์ กล่าวอีกนัยหนึ่ง การเปลี่ยนจากแพ็คเกจ PHP-Zend เป็นแพ็คเกจ PHP-HHVM ไม่ใช่งานข้ามคืน สำหรับเจ้าของเว็บไซต์ขนาดเล็ก การเปลี่ยนไปใช้ PHP 7 จะง่ายกว่ามาก เมื่อเทียบกับการเปลี่ยนไปใช้ HHVM ที่ซับซ้อน ซึ่งต้องการความเชี่ยวชาญมากกว่า
PHP 7 Hosting โดย AccuWebHosting
ไม่น่าแปลกใจเลยที่ AccuWebHosting เป็นหนึ่งในโฮสต์เว็บรายแรกๆ ที่ให้บริการโฮสติ้ง PHP 7 ทีมทดสอบที่กระตือรือร้นของเรารอคอย PHP เวอร์ชันล่าสุดมาอย่างยาวนาน ในวันถัดไปหลังจากเปิดตัว PHP 7 ทีมงานได้ใช้โอกาสนี้ทดสอบ PHP 7 บนโครงสร้างพื้นฐานเว็บโฮสติ้งของเรา
เราภูมิใจเสนอการสนับสนุน PHP 7 ทั้งบน Linux Shared SSD Hosting และ WordPress Hosting
AccuWebHosting มีปลั๊กอินการกำหนดค่า PHP บนแผน Linux Shared/Reseller ช่วยให้ลูกค้าสามารถตั้งค่าเวอร์ชัน PHP 7 สำหรับไดเร็กทอรีและโดเมนได้ ลูกค้า Linux Shared SSD Hosting และ WordPress Hosting สามารถใช้บทความต่อไปนี้เพื่อเปลี่ยนจาก PHP เวอร์ชันเก่าเป็น 7:
เปลี่ยนเวอร์ชัน PHP จาก cPanel
รองรับ PHP 7 บนเซิร์ฟเวอร์เฉพาะ
- ด้วยเซิร์ฟเวอร์เฉพาะสำหรับ Windows ทีมงาน AccuWebHosting จะติดตั้งและกำหนดค่า PHP 7 ตามความต้องการ
- ปัจจุบัน cPanel/WHM ไม่รองรับ PHP 7 ดังนั้นจึงไม่สามารถใช้ PHP 7 ในเซิร์ฟเวอร์เฉพาะ cPanel ได้ เว้นแต่ว่าจะใช้ระบบปฏิบัติการ CloudLinux เมื่อ cPanel/WHM เริ่มรองรับ PHP 7 แล้ว ก็สามารถเพิ่มได้ผ่าน WHM EasyApache
- ลูกค้าเซิร์ฟเวอร์เฉพาะสำหรับ Linux (ไม่มี cPanel) สามารถติดตั้งและกำหนดค่า PHP 7 ได้ตามความต้องการ
รองรับ PHP 7 บน Windows VPS
แผน Windows VPS ทั้งหมดของเรารองรับ PHP 7 ลูกค้า Windows VPS จะต้องส่งตั๋วเพื่อติดตั้งและกำหนดค่า PHP 7
รองรับ PHP 7 บน Linux VPS
ลูกค้า Linux VPS (ไม่มี cPanel) สามารถติดตั้งและกำหนดค่า PHP 7 ได้ตามความต้องการ เนื่องจาก cPanel ไม่รองรับ PHP 7 ลูกค้า cPanel VPS จึงต้องรอจนกว่า cPanel จะเปิดตัวรองรับ PHP 7 เมื่อ cPanel เริ่มรองรับ PHP 7 แล้ว ก็สามารถเพิ่มผ่าน EasyApache ได้