Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

PHP 7.4 на PHP 8.0

504  
пишущий читатель свой человек28.04.23 13:47
пишущий читатель
28.04.23 13:47 
Последний раз изменено 30.04.23 09:43 (gendy)

вопрос в том - много ли надо изменять в файлах? мою страницу для меня делали аж 10 лет назад. до сих пор переходы на новые версии PHP проходили нормально. а тут - экран белый. хостинг на Strato.


#1 
alex445 коренной житель28.04.23 14:04
NEW 28.04.23 14:04 
в ответ пишущий читатель 28.04.23 13:47

Ищите по теме миграций

https://www.php.net/manual/en/migration80.php

#2 
AlexNek патриот28.04.23 20:46
AlexNek
NEW 28.04.23 20:46 
в ответ пишущий читатель 28.04.23 13:47

Недавно только подобное делал. Зависит от того как проект написан.

Если например, есть прослойка к базе, то нужно только один файл менять, а если нет, то то тогда каждый вызов к базе.

Функции некоторые разные, из "сложных", для замены, strftime, для остальных очень немного нужно изменить. Сервер может также потребовать настройки.

Логгинг еще добавил.

#3 
AlexNek патриот28.04.23 21:24
AlexNek
NEW 28.04.23 21:24 
в ответ AlexNek 28.04.23 20:46

Еще из неприятного - некоторые вещи работают по другому. Многое нужно делать явно, о чём раньше мало кто задумывался - работает же.

Типа - переменные стали "менее" глобальными.

После того, как уберете все "видимые" ошибки нужно будет искать отчего не работает, то или это.

#4 
пишущий читатель свой человек29.04.23 10:28
пишущий читатель
NEW 29.04.23 10:28 
в ответ alex445 28.04.23 14:04

спасибо за линк! если б я сама программировала...

#5 
пишущий читатель свой человек29.04.23 10:31
пишущий читатель
NEW 29.04.23 10:31 
в ответ AlexNek 28.04.23 20:46

AlexNek, я Вашу тему читала. Собственно, Вы ответили именно так, как я и думала - в зависимости от того, как написано. Или одной закорючкой можно подправить, или всё менять. Поскольку не я сама проект писала, хочу немного подковаться для разговора с программистом улыб

#6 
AlexNek патриот29.04.23 10:52
AlexNek
NEW 29.04.23 10:52 
в ответ пишущий читатель 29.04.23 10:31
Или одной закорючкой можно подправить, или всё менять

не совсем так, если рассматривать весь проект. Менять нужно будет довольно много.

Насколько важны данные? Использовался ли какой то стандартный софт? Вполне возможно, что проще будет сделать на более современном уровне.

Какая функциональность присутствует на сайте? Сколько php файлов имеется? /дофига или можно подсчитать/

#7 
Simple Nothing is f*cked29.04.23 19:57
Simple
NEW 29.04.23 19:57 
в ответ пишущий читатель 28.04.23 13:47

https://www.php.net/manual/en/migration80.php

Многое можно конвертировать автоматически: https://github.com/rectorphp/rector/blob/main/docs/rector_...

#8 
AlexNek патриот29.04.23 23:30
AlexNek
NEW 29.04.23 23:30 
в ответ Simple 29.04.23 19:57, Последний раз изменено 29.04.23 23:32 (AlexNek)
Многое можно конвертировать автоматически

глянул правила по быстрому, ни одного не нашел, что у меня было, хотя начальная версия не была и 7.0

#9 
gendy Dinosaur30.04.23 09:44
gendy
NEW 30.04.23 09:44 
в ответ пишущий читатель 28.04.23 13:47

зависит от того как делали. если делали на чистом пхп , то надо менять функции, а возможно и переписывать с нуля.

если сделано на каком то фреймворке, то надо обновлять фреймворк и надеяться что заработает. Возможно опять же свою часть переписывать с нуля, но это уже проще

в обоих случаях можно использовать какие то куски от старого сайта

самое худшее, если программист зашифровал свой код или использовал шифрованный фреймворк. Тогда про свой сайт можете просто забыть и начинать делать полностью новое

Фашизм будет разбит


Человека карают только те боги, в которых он верит

#10 
Simple Nothing is f*cked30.04.23 20:43
Simple
NEW 30.04.23 20:43 
в ответ AlexNek 29.04.23 23:30, Последний раз изменено 30.04.23 20:43 (Simple)

У нас в проекте был длинный путь от 5.4 до 8.1 в несколько этапов.

Я уже не помню, какие были основные косяки, по-моему с create_function и deprecations. Для некоторых я писал свои ректоры, это оказалось проще, чем исправлять вручную.

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

#11 
Бесконечный цикл завсегдатай30.04.23 21:46
NEW 30.04.23 21:46 
в ответ пишущий читатель 28.04.23 13:47

Не могу пройти мимо PHP




#12 
пишущий читатель свой человек01.05.23 09:30
пишущий читатель
NEW 01.05.23 09:30 
в ответ gendy 30.04.23 09:44

"самое худшее, если программист зашифровал свой код или использовал шифрованный фреймворк" хммм к чему-то похожему я себя готовлю... с другой стороны, новый сайт (новый дизайн) раз в 10 лет - почему бы и нет? улыб

#13