การเปลี่ยนแปลงของรหัสใดบ้างที่จำเป็นเพื่อทำให้ Joomla 3.5 Extensions PHP7 สามารถทำงานร่วมกันได้?


9

(โปรดอดทนกับฉันฉันขอโทษ แต่ฉันก็ไม่สามารถถามได้อย่างรวดเร็ว)

เราทุกคนแทบจะรอ Joomla 3.5.0 รุ่นที่เสถียรใช่มั้ย

RC3 RC4 เปิดตัวในวันนี้และเป็นเพียงไม่กี่วันจนกว่าเธอจะได้รับการปล่อยตัวในที่สุด ( Joomla 3.5.0 Stable เพิ่งเปิดตัวในวันจันทร์ที่ 21 มีนาคม 2016 ) หลังจากใช้เวลานานกว่าหนึ่งปีในการสร้างและการเปลี่ยนแปลงเป้าหมายจำนวนมาก

คุณสมบัติที่ใหญ่ที่สุดในบรรดาการปรับปรุงที่เห็นได้ชัดเจนอื่น ๆนั้นแน่นอนว่าจะเป็นความสามารถในการทำงานบน PHP7 ใหม่ล่าสุดทำให้การดำเนินการเร็วขึ้นเกือบ 50% และการใช้หน่วยความจำลดลงเกือบ 4 เท่า ( แหล่งที่มา )

เนื่องจากการเปลี่ยนแปลงภายในของ PHP7 (การแนะนำของคำใบ้ประเภทและคำที่สงวนไว้ตอนนี้ "int", "สตริง" และ "ลอย") มันจะส่งผลให้เกิดการหยุดการทำงานร่วมกันของ Backwards สำหรับส่วนขยายมากมายแม้ว่า Joomla 3.5.0 เข้ากันได้อย่างสมบูรณ์กับ PHP7
(ที่มา: ตัวแบ่งความเข้ากันได้ย้อนหลังจากข่าวประชาสัมพันธ์ RC4 :)

เรามีสัญญาด้านความเข้ากันได้แบบย้อนหลังเพื่อให้แน่ใจว่ารหัสจะไม่หยุดกะทันหัน อย่างไรก็ตามมีสถานการณ์ที่ทำให้เราไม่สามารถรักษาสัญญานี้ได้อีกต่อไป ใน Joomla 3.5 เป็นกรณีนี้ เนื่องจากการเปลี่ยนแปลงใน PHP 7 เราต้องเปลี่ยนชื่อคลาส String เป็น StringHelper มิฉะนั้น Joomla! ไม่สามารถทำงานบน PHP 7 ได้นี่เป็นการเปลี่ยนแปลงเล็กน้อยมากและเราไม่คาดหวังปัญหาใด ๆ สำหรับผู้ที่สนใจคุณสามารถอ่านเพิ่มเติมได้ที่Update เพื่อแพคเกจ String 1.3

ฉันติดตามการพัฒนาของเธอและทดสอบ J! 3.5.0 บน SiteGround's PHP7 ตั้งแต่ Betas แรกของเธอจนถึง RC4 ใหม่ล่าสุดและฉันสามารถยืนยันได้ว่าการปรับปรุงนั้นยอดเยี่ยมและยอดเยี่ยม

แต่ ...ตอนนี้ฉันกังวลมากเราจะเห็นว่าส่วนขยายทั้งหมดได้รับการอัปเดตอย่างเต็มที่เพื่อรองรับ PHP7 หรือไม่ มีโอกาสที่ยิ่งใหญ่ที่จะใช้เวลาเป็นเดือนจนกว่าเราจะสามารถเรียกใช้เว็บไซต์ของเราได้อย่างอิสระบน PHP ใหม่ที่ได้รับการกำหนดค่าเนื่องจากพวกเขาอยู่บน v3.4.8

ดังนั้น ... ฉันกำลังพิจารณาอย่างจริงจังในการอัปเดตส่วนขยายผู้ดูแลระบบที่ฉันโปรดปรานเพื่อสนับสนุน PHP7ดังนั้นฉันจึงสามารถใช้พวกเขากับ v3.5 ใหม่ได้ สำหรับผู้ที่ได้รับความนิยมและสนับสนุนอย่างแข็งขัน (เช่น Akeeba, JCE, ฯลฯ .. ) ฉันจะรอการอัปเดตของนักพัฒนาโดยหวังว่าพวกเขาจะมาเร็ว แต่สำหรับผู้ที่ไม่ได้รับการสนับสนุนอย่างแข็งขันอีกต่อไป (มีหลายคนที่ฉันใช้ต่อไปเป็นเวลานานไม่ต้องขอรายละเอียดเลย) โปรดฉันต้องอัปเดตด้วยตัวเอง

และ ...ในที่สุดคำถามของฉันคือคุณทราบหรือไม่ว่าการเปลี่ยนแปลงรหัสใดที่จำเป็นเพื่อให้สามารถใช้งานร่วมกับ PHP7 ได้หรือไม่?
ฉันหมายถึงนอกเหนือจากการเปลี่ยนแปลงที่ทีม Joomla เองต้องได้รับเพื่ออัปเดตแพ็คเกจเป็น String 1.3 ...


1
ฉันคิดว่าส่วนใหญ่โพสต์นี้สามารถแก้ไข / ลบได้ จุดสนใจหลักของคำถามคือ "การเปลี่ยนแปลงของรหัสใดบ้างที่จำเป็นเพื่อให้ Joomla 3.5 ส่วนขยายรองรับ PHP7 ได้" แม้ว่าฉันคิดว่าการอ้างอิงที่รวมถึงการเปลี่ยนแปลงที่ทราบมีความสำคัญ
TryHarder

1
@moomoochoo - Thanx สำหรับการเปลี่ยนชื่อคน ... ฉันยังคิดว่าการอ้างอิงมีความสำคัญต่อผู้ชมที่กว้างขึ้น ...
Mikan

1
หากส่วนขยายใด ๆ ที่คุณใช้ใช้ประโยชน์จากตัวโหลด ioncube คุณอาจต้องรอสักครู่ forum.ioncube.com/…ในสถานการณ์นี้การแก้ไขส่วนขยายจะไม่ช่วย
TryHarder

@oooooo - Thanx สำหรับการชี้ให้เห็นว่ามันเป็นสิ่งที่ดีที่จะรู้ว่า ioncube ยังคงไม่สามารถใช้งานได้กับ PHP รุ่นใหม่ถึงแม้ว่าจุดสนใจหลักของฉันคือส่วนขยายตัวช่วยเล็ก ๆ น้อย ๆ ทั้งหมดที่เราผู้ดูแลระบบไม่สามารถจินตนาการได้ ระดับการป้องกันลิขสิทธิ์
Mikan

1
แม้ว่ามันอาจจะไม่ครอบคลุมการโฟกัสของคุณ แต่ฉันหวังว่ามันจะเกี่ยวข้องและมีประโยชน์สำหรับผู้อื่น :)
TryHarder

คำตอบ:


5

ตกลงสิ่งแรกคือก่อน Joomla 3.5.0 เสถียรจะถูกปล่อยวันพรุ่งนี้วัน จันทร์หน้า :)

ฉันย้อนกลับไปก่อนแล้วค่อยสำรองไซต์ของคุณและติดตั้งลงในโดเมนย่อยหรือโฮสต์ในพื้นที่ของคุณโดยใช้ PHP 7.0.4

เมื่อเสร็จแล้วทดสอบอย่างละเอียด

สำหรับส่วนขยายนั้นฉัน Nicolas จาก Akeeba สนับสนุน PHP 7 แล้วและส่วนขยายยอดนิยมอื่น ๆ น่าจะสนับสนุนอยู่แล้ว

ฉันจะไม่ทำการเปลี่ยนแปลงที่สำคัญใด ๆ ด้วยตัวคุณเองและรอให้นักพัฒนาอัปเดตเป็นและเมื่อพวกเขาทำได้ คุณรู้หรือไม่ว่าการเจาะ "คอร์แฮ็ค" .... มันเป็นพื้นที่ "ไม่ไป"

สำหรับการเปลี่ยนแปลงความไม่ลงรอยกันย้อนหลังดูที่เว็บไซต์ PHP อย่างเป็นทางการดังนี้

http://php.net/manual/en/migration70.incompatible.php

โดยรวมแล้วอาจต้องรอสองถึงสามเดือนจนกว่า PHP 7 จะเสถียรกว่านี้เล็กน้อย มันยังค่อนข้างใหม่และจะมีบั๊กขนาดใหญ่ออกมาแน่นอน

หวังว่านี่จะช่วยได้


แน่นอนว่ามันช่วย ... คน Thanx ... ไม่สามารถรอจนกระทั่งพรุ่งนี้ ;-)
Mikan

ดูเหมือนว่าพวกเขาเลื่อนออกไปอีกครั้ง Stable :-( twitter.com/viktorvogel/statuses/710007837850791937แต่พวกเขาปล่อยออกมาแทน RC4 วันนี้ ... โอ้ดี ...
Mikan

2
@MirkoMikan - เสถียรเป็นวันจันทร์ถัดไปตอนนี้
Lodder

2

นี่ไม่ใช่คำตอบสำหรับคำถามของฉันฉันแค่ต้องการแชร์ลิงก์ที่ฉันเพิ่งพบและอาจมีประโยชน์ในการอัพเกรด Joomlas เป็น 3.5:

มีรายชื่อของ Google Doc " Joomla! Extensions ที่สนับสนุน Joomla! 3.5 และ PHP 7 " ซึ่งเป็นสาธารณะและดูแลโดยชุมชน (เรากำลังพูดถึง Joomla หลังจากนั้น :-))

ฉันรู้ว่าฉันควรจะใส่มันเป็นความคิดเห็นและไม่เป็นคำตอบ แต่ฉันคิดว่ามันจะมองเห็นได้ด้วยวิธีนี้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.