8 (495) 118-29-56
Хостинг Портфолио Кейсы продвижения
+7 (495) 118-29-56 Многоканальный телефон

1С Битрикс: переход с PHP 5.6 на PHP 7.4

02.07.2022 Многим клиентам 1С Битрикс начали приходить письма что "Необходимо обновить вашу версию продукта 1С-Битрикс", многие решились делать обновления самостоятельно запросив до этого у нас счет на продление 1С Битрикс. В итоге почти 99% клиентов начали массово писать что не могут обновить платформу, так как (цитируем дословно): "Там пишет ошибка, обновить версию PHP [скриншот 1] мы написали на хостинг нам поменяли версию на 7.4 а сайт выдает ошибку [скриншот 2] и сайт не работает." Мы приступили срочно разбираться к решению проблемы.


Мы откатили PHP снова на 5.6 и заходим в админку, там у нас были ошибки по консоли которые легко правятся и на это даже не будем таратить время чтобы прикладывать скриншоты и что делать, там все просто и с инструкцией. Далее на странице обновления мы видим вот такое такое сообщение:

ошибка php 56 битрикс
[скриншот 1]

Ага... Ясно понятно)))) а при переключении с PHP с 5.6 на PHP 7.4 вылезают ошибки 

ошибка при смене php на 74 с php 56
[скриншот 2]

Почему так?

Все оказалось просто, как известно, используемое в продукте 1С Битрикс расширение mysql объявлено устаревшим в  PHP 5.5.0. Поэтому в новом ядре было сразу предусмотрено использование актуального расширения mysqli. Но в одном из этапов разработки Компания 1С решила совместить старое и новое ядро в один жизненный цикл. Так как старое ядро не умело работать с mysqli, то и в новом его не получалось использовать.

 И вот в обновлении ядра 14.5.2 добавлена полная поддержка mysqli. Включать mysqli нужно отдельно для старого и нового ядра:

Откройте файл dbconn.php через FTP   \bitrix\php_interface\dbconn.php
вставьте define("BX_USE_MYSQLI", true); в конце перед "?>"

далее \bitrix\.settings.php
и заменяем старый на новый
замена.jpg

 'connections' => 
  array (
    'value' => 
    array (
      'default' => 
      array (
        'className' => '\\Bitrix\\Main\\DB\\MysqliConnection',
        'host' => 'localhost',
        'database' => 'sitemanager', /* тут указываем вашу базу данных)*/
        'login' => 'root', /* тут указываем вашего пользователя базы данных) */
        'password' => '*****', /* ну и пароль от базы данных)*/
      ),
    ), 
  ),


Внимание, в php должно быть установлено расширение mysqli, дополнительные проверки на наличие расширения не производятся! Так же как они не делались для mysql. Кроме того, в этом обновлении улучшилась совместимость с php 5.5 (исправлены регулярные выражения с модификатором "e").

Возврат к списку


Более 150 Запущенных проектов

150 +

Запущенных проектов

В год мы запускаем более 150 сайтов и магазинов.

Более 50 Продвинутых сайтов

50 +

Продвинутых сайтов

Ежегодно мы продвигаем более 50 сайтов.

Более 80 Рекомендаций

80 +

Рекомендаций

Ежегодно более 80 клиентов приходят по рекомендации.

Более 14 Лет работаем

14 +

Лет работаем

Мы работаем в области создания и продвижения сайтов с 2008 года

Наши популярные услуги


Мы специализируемся на платформах

Свайп

Акции и спецпредложения Смотреть все

Надежная поддержка клиентов в
мобильном приложении