Обсуждение Magento и PHP7

Тема в разделе "Magento", создана пользователем Vitazzz, 10 фев 2016.

Модераторы: artmouse, Violent
  1. Vitazzz

    Vitazzz Создатель

    Регистр.:
    24 мар 2015
    Сообщения:
    16
    Симпатии:
    2
    Кто-нибудь пробовал переводить свои сервера с Magento на версию PHP7? Предлагаю делиться опытом. Слышал про прирост производительности, но интересует, как оно себя ведет.
    Вроде как есть одна небольшая несовместимость, которую нужно исправить в файле app/code/core/Mage/Core/Model/Layout.php

    $out .= $this->getBlock($callback[0])->$callback[1]();

    на

    $out .= $this->getBlock($callback[0])->{$callback[1]}();
     
  2. Diamir

    Diamir

    Регистр.:
    21 май 2013
    Сообщения:
    175
    Симпатии:
    424
    великолепно работает, прирост видно глазом, значит точно большой :)
     
  3. KaiSer77

    KaiSer77 Постоялец

    Регистр.:
    21 июл 2013
    Сообщения:
    130
    Симпатии:
    60
    Я бы рекомендовал не лезть в код, а поставить extention, например, бесплатный вариант от Inchoo

    Там еще с import/export надо еще кое-что править, что бы была совместимость.

    Еще для тех у кого в .htaccess задана конфигурация параметров PHP через <IfModule mod_php5.c>, надо не забыть добавить:

    <IfModule mod_php7.c>
    php_value memory_limit 256M
    php_value max_execution_time 18000
    php_flag session.auto_start off
    </IfModule>
     
    Последнее редактирование модератором: 10 фев 2016
    warg нравится это.
  4. warg

    warg Постоялец

    Регистр.:
    26 июн 2007
    Сообщения:
    125
    Симпатии:
    139
    ощутимо веселее работает.

    присоединяюсь, отличное расширение, перевел два магазина пока полет нормальный.
    только насколько я понял оно лечит только local и community, core все равно пришлось править самому.
    полное описание и бенчмарки тут.

    "as always" так лучше не делать :)
    лучше этот класс расширить в каком нибудь из кастомных модулей, либо скопировать этот класс в
    app/code/local/Mage/Core/Model/ и уже править там.
     
  5. artmouse

    artmouse ★ ★ ★ ★ ★

    Moderator
    Регистр.:
    16 июн 2007
    Сообщения:
    391
    Симпатии:
    896
    Вопрос про совместимость сторонних модулей и шаблонов остается открытый. Кто какие модули уже тестировал с php7 ???
     
  6. Dekrua

    Dekrua

    Регистр.:
    25 июн 2014
    Сообщения:
    254
    Симпатии:
    355
    Magento Search AutoComplete extension
    не работает((( это лучший поиск который я видел


    как оказалось не работает только если включен стандартный поиск с методом "Like"
     
    Последнее редактирование модератором: 12 фев 2016
  7. KaiSer77

    KaiSer77 Постоялец

    Регистр.:
    21 июл 2013
    Сообщения:
    130
    Симпатии:
    60
    Проверка кода сторонних модулей и шаблонов можно сделать с помощью команды: grep -rnPe '->\$.+\[.+\]\(.*\)' app/

    А какая версия magento, все ли патчи стоят?

     
    Последнее редактирование модератором: 17 мар 2016
    Kamik и Dekrua нравится это.
  8. Dekrua

    Dekrua

    Регистр.:
    25 июн 2014
    Сообщения:
    254
    Симпатии:
    355
    Подскажите, кто ставил себе Sphinx Search Ultimate 2.3.2.1290 - не работает функционал переадресации 400 ошибки на страницу поиска (на php5* все ок)
    grep -rnPe '->\$.+\[.+\]\(.*\)' app/ - конфликтов нет

    В общем если 404 страница будет с макетом "2 колонки с правой полосой" или каким то другим отображением - работать не будет. Нужно выставлять макет "1 колонка"

    ничего, я отписал решения. работает если макет "1 колонка"
     
    Последнее редактирование модератором: 17 мар 2016
  9. artmouse

    artmouse ★ ★ ★ ★ ★

    Moderator
    Регистр.:
    16 июн 2007
    Сообщения:
    391
    Симпатии:
    896
    А в логах, что?
     
  10. Daseraf

    Daseraf Постоялец

    Регистр.:
    25 сен 2014
    Сообщения:
    98
    Симпатии:
    54
    Какие именно изменения требуются в коде?
    команда:
    Код:
    grep -rnPe '->\$.+\[.+\]\(.*\)' app/
    
    выдает:
    Код:
    app/code/core/Mage/ImportExport/Model/Export/Entity/Product/Type/Abstract.php:99:                $data['filter_options'] = $this->$data['options_method']();
    app/code/core/Mage/ImportExport/Model/Export/Entity/Customer.php:250:                    $data['filter_options'] = $this->$data['options_method']();
    app/code/core/Mage/ImportExport/Model/Import/Uploader.php:135:                $params['object']->$params['method']($filePath);
    
    А что с этим требуется делать? Layout.php исправлен, magento 1.9.2.3. обновленная с 1.9.0 через magento downloader
    По всем фронтам ошибка 500