Joomla 3.5 확장 PHP7 호환을 위해 어떤 코드 변경이 필요합니까?


9

(미안하지만 빨리 물어볼 수는 없습니다.)

우리는 Joomla 3.5.0의 안정적인 버전을 거의 기다리지 않습니다.

RC3 RC4는 오늘 출시되었으며 1 년 넘게 수많은 목표 변경과 ETA 연기가 끝난 후 최종 출시 ( Joomla 3.5.0 Stable이 2016 년 3 월 21 일 월요일에 출시됨) 될 때까지는 며칠 입니다.

다른 모든 눈에 띄는 개선 사항 중 가장 큰 특징 은 최신 PHP7에서 실행할 수있는 기능으로, 실행 속도가 거의 50 % 빨라지고 메모리 소비 ( 소스 )가 거의 4 배 줄어 듭니다 .

PHP7의 내부 변경 (유형 힌트의 도입과 현재 예약 된 단어 "int", "string"및 "float")으로 인해 Joomla 3.5.0 코어 자체가 여러 확장을 위해 이전 버전과의 호환성 중단을 초래합니다. PHP7과 완벽하게 호환됩니다.
( 출처 : RC4 Release News의 이전 버전과의 호환성 중단 :)

우리는 코드가 갑자기 깨지지 않도록 이전 버전과의 호환성을 약속합니다. 그러나 더 이상이 약속을 지키지 않아도되는 상황이 있습니다. Joomla 3.5에서는이 경우입니다. PHP 7의 변경으로 인해 String 클래스의 이름을 StringHelper로 바꾸어야했습니다. 그렇지 않으면 Joomla! PHP 7에서는 실행할 수 없습니다. 이것은 사소한 변화이며 그로 인한 문제는 없을 것으로 예상됩니다. 관심있는 사람들을 위해 Update to String package 1.3 에서 더 많은 것을 읽을 수 있습니다 .

나는 그녀의 개발을 예리하게 따르고 최신 RC4까지 첫 베타 이후 SiteGround의 PHP7에서 J! 3.5.0을 테스트했으며 개선이 눈에 띄고 훌륭하다는 것을 확인할 수 있습니다.

하지만 ... 지금 매우 걱정 됩니다. PHP7을 지원하도록 모든 확장 프로그램이 얼마나 빨리 업데이트됩니까? 현재 v3.4.8과 같이 구성된 새 PHP에서 사이트를 자유롭게 실행할 수있을 때까지 몇 개월이 걸릴 가능성이 큽니다.

그래서 ... PHP7을 지원하기 위해 내가 좋아하는 관리자 확장을 수동으로 업데이트하는 것을 진지하게 고려 하고 있으므로 새로운 v3.5에서 계속 사용할 수 있습니다. Akeeba, JCE 등과 같이 대중적이고 적극적으로 지원되는 사람들에게는 개발자의 업데이트가 매우 빨리 나기를 바랍니다. 그러나 더 이상 적극적으로 지원되지 않는 사람들을 위해 (나에게 계속 사용하는 많은 것들이 있으며, 세부 사항을 요구하지 마십시오) 직접 업데이트해야합니다.

그리고 ... 내 질문은 마침내 : PHP7 호환 확장을 만들기 위해 어떤 코드 변경이 필요한지 알고 있습니까?
내 말은, Joomla 팀 자체가 Update to String package 1.3을 위해 수행해야했던 변경 사항 외에도 ...


1
이 게시물의 대부분을 수정 / 삭제할 수 있다고 생각합니다. 이 질문의 주요 초점은 "Joomla 3.5 확장 PHP7 호환을 위해 어떤 코드 변경이 필요합니까?"입니다. 알려진 변경 사항에 포함 된 참조가 중요하다고 생각합니다.
TryHarder

1
@moomoochoo-타이틀 변경 담당자를위한 감사합니다 ... 또한 참조가 더 많은 사람들에게 중요하다고 생각합니다.
Mikan

1
사용하는 확장 중 하나가 ioncube 로더를 사용하는 경우 잠시 기다려야 할 수 있습니다. forum.ioncube.com/… 이 경우 확장을 수정해도 도움이되지 않습니다.
TryHarder

@oooooo-고맙습니다. 이온 큐브는 최신 PHP에서 여전히 호환되지 않는다는 것을 아는 것이 좋습니다. 주로 우리가 노련한 관리자가 툴 박스를 상상할 수없는 작은 도우미 확장 프로그램에 거의 초점을 맞추지 않았지만 거의 사용하지 않습니다. 그 수준의 라이센스 보호.
Mikan

1
그것은 당신의 초점을 다루지 않을 수도 있지만, 그것이 다른 사람들에게 관련되고 유용하기를 바랍니다 :)
TryHarder

답변:


5

좋아, 먼저. Joomla 3.5.0 안정은 다음주 월요일 내일 출시 될 예정 입니다 :)

한 걸음 물러서서 먼저 사이트를 백업하고 PHP 7.0.4를 실행하는 하위 도메인이나 로컬 호스트에 설치합니다.

완료되면 철저히 테스트하십시오.

확장에 관해서는, Akeeba의 Nicolas는 이미 PHP 7을 지원하며 다른 인기있는 확장은 이미 그것을 지원할 것입니다.

핵심 변경은 자제하고 개발자가 가능할 때 언제든지 업데이트 할 때까지 기다립니다. 당신은 "핵 핵"훈련을 알고 있습니다.

이전 버전과의 비 호환성 변경에 대해서는 공식 PHP 웹 사이트에서 다음을 살펴보십시오.

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

전반적으로 PHP 7이 좀 더 안정적이 될 때까지 몇 달 정도 기다려야 할 것입니다. 여전히 비교적 새롭고 분명히 큰 버그가 있습니다.

도움이 되었기를 바랍니다


확실히 도움이됩니다 ... 고맙습니다 남자 ... 내일까지 기다릴 수 없습니다 ;-)
Mikan

그들이 Stable을 다시 연기 한 것 같습니다 :-( twitter.com/viktorvogel/statuses/710007837850791937 , 그러나 그들은 오늘 RC4를 발표했습니다 ... 오, 음 ...
Mikan

2
@MirkoMikan-안정은 다음주 월요일입니다
Lodder

2

이것은 내 질문에 대한 답변이 아니며 방금 찾은 링크를 공유하고 Joomlas를 3.5로 업그레이드하는 데 도움이 될 링크를 공유하고 싶었습니다.

Google Doc " Joomla! 3.5 및 PHP 7을 지원하는 Joomla! 확장 프로그램 목록이 있습니다.커뮤니티에서 공개적으로 제공하고 유지 관리 "이 있습니다 (우리는 Joomla에 대해 이야기하고 있습니다 :-)).

나는 대답이 아니라 의견으로 언급해야한다는 것을 알고 있지만,이 방법으로 더 잘 보입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.