За последние 24 часа нас посетили 20935 программистов и 1198 роботов. Сейчас ищут 495 программистов ...

Какая версия РНР мне больше подходит?

Тема в разделе "PHP для новичков", создана пользователем Vladd55, 3 дек 2023.

  1. Vladd55

    Vladd55 Новичок

    С нами с:
    11 дек 2021
    Сообщения:
    84
    Симпатии:
    1
    Я пишу скриптов немного, и до сего дня использовал РНР 5.6, причем процедурный вариант. Поскольку объектно-ориентированный стиль практически не знаю.

    Вот задумал сделать сервис, и меня форумчане засрамили - утверждают, что пятая версия сильно устарела.

    Я попробовал 7.4 и сразу столкнулся с проблемой - не удалось наладить вывод сообщений об ошибках. Перепробовал все, что нашел в сети - не работает. Хостер дал мне свой рецепт - тоже не работает. Сейчас ночь, и я полагаю, что хостер завтра решит эту проблему, но вопрос о другом, о более глобальном.

    Есть какие-то ещё сюрпризы у версии 7.4 ?
    Есть ли возможность с моими скромными навыками работы на 5.6 писать на 7.4, просто используя относящиеся к ней операторы? Нет ли там каких-то принципиально новых структурных новшеств, которые создадут мне проблемы?

    А что можно сказать в этом плане про РНР 8.2 ?
    У нее еще какая-нибудь специфика?
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.727
    Симпатии:
    1.314
    Адрес:
    Лень
    PHP 8.3 был выпущен 23 ноября 2023 года
     
    [vs] нравится это.
  3. Vladimir Kheifets

    Vladimir Kheifets Новичок

    С нами с:
    23 сен 2023
    Сообщения:
    197
    Симпатии:
    29
    Адрес:
    Бавария, Германия
    Добрый день!

    Целесообразно переходить на последнею стабильную версию PHP.
    Тогда можно избежать лишних переделок.
    На версии с 7.4 до 8.1 не стоит переходить т.к. поддержка версии 8.1 заканчивается 25.11.2024, а версии до 8.0 уже не поддерживаются.

    Про сюрпризы миграции с версии 5.6.
    Главный сюрприз в том, что начиная с версии 7.0 удалены все функции mysql.

    Если у Вас есть пользовательские функции, в который могут при вызове не определятся все параметры,
    то в этом случае будут возникать ошибки
    Fatal error: Uncaught ArgumentCountError: Too few arguments to function , например
    PHP:
    1. function myFunction($a, $b){
    2. if($b)
    3.   return $a + $b;
    4. else
    5.   return $a
    6. }
    7. echo myFunction($a); // Fatal error: Uncaught ArgumentCountError: Too few arguments to function
    Обойти можно так
    PHP:
    1. function myFunction($a, $b=null)
    По мере "взросления" в PHP ужесточаются требования к типам данных и то, что раньше проходило, теперь приводит к фатальным ошибкам, например, если параметр при вызове функций count или foreach, не array,
    или при попытке выполнение арифметических операций с переными тип которых, отличается от float или integer.

    Посмотрите Summary of PHP Changes Versions 5.6 - 8.2
    https://hdkb.clemson.edu/phpkb/article.php?id=2969

    Вообщем, при миграции буду возникать ошибки, с которыми придётся бороться.
    Удачи!
     
    #3 Vladimir Kheifets, 3 дек 2023
    Последнее редактирование: 3 дек 2023
    Vladd55 и [vs] нравится это.
  4. Vladd55

    Vladd55 Новичок

    С нами с:
    11 дек 2021
    Сообщения:
    84
    Симпатии:
    1
    Вы меня реально испугали!
    На самом деле, удалены только mysql, а MySQLi остался.
     
  5. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    829
    Симпатии:
    129
    @Vladd55, если не в проде, всегда старайся использовать последнюю версию.
     
    Vladd55 нравится это.
  6. Vladimir Kheifets

    Vladimir Kheifets Новичок

    С нами с:
    23 сен 2023
    Сообщения:
    197
    Симпатии:
    29
    Адрес:
    Бавария, Германия
    Если б я хотел Вас напугать, то так бы и написал, что удалены все функции mysqli.
    Не пугайтесь и берегите себя!
     
    Vladd55 нравится это.