logo
10.12.2019 01:48
1
Zdravím,
chtěl bych se zeptat, jak zjišťujete s jakou verzí PHP je software kompatibilní. Existuje nějaká pomůcka, která projede PHP soubory a zjistí jaká verze bude vhodná?

Budu nucen přejít na novější PHP a musím zjistit, jestli Prestashop bude fungovat nebo které soubory bude nutné upravit.

Díky
10.12.2019 05:48
2
U každého scriptu software výrobce popisuje MAX: PHP kompatibilní. Zkusit test můžeš na svém hostingu, pokud váš poskytovatel podporuje SELECTOR PHP - PŘEPÍNAČ ZVLÁŠT NA KAŽDOU JINOU DOMÉNU. HNED POZNÁŠ jestli tvůj Prestashop je kompatibilní třeba na PHP 7.4.
10.12.2019 07:05
4
jako tvůrce to odzkouším. Existuje řada frameworků, které mě s tím pomohou, jeden s českými kořeny je třeba PHPStan, ale to je na prestashop vzhledem k množství jeho chyb nenasaditelné.

Maximální verze v dokumentaci nemusí být vypovídající, těžko někdo ví co nekompatibilního přinese další verze php, podrobná roadmapa a dopředná kompatibilita se v php moc nenosí.
10.12.2019 09:51
5
Jaká verze PrestaShopu?

Jinak PrestaShop je v tomto trochu "nečitelný". Jedna věc je PrestaShop samotný. Tam se dají dohledat nějaké doporučení pro použití verze PHP a když se vyskytuje nějaká nekompatibilita, tak se za nějaký čas opraví.

Jenže o modulech neví nikdo nic určitého. Kontrola kompatibility s určitou verzí pomocí phpcs je použitelná jen z části a selže na věcech, které žádný takový nástroj nemůže odhalit.

V jiných systémech by normálně by stačilo podívat se na kompatibilitu do composer.json.
10.12.2019 10:18
6
ani composer.json není často řešením, protože tím, že se php evaluje za běhu, může 99 % aplikace fungovat v pořádku a jen nějaká zastrčená funkce bude selhávat. Pro mě je už evergreen třeba callback url z platební brány, což je část, která se blbě ručně testuje, automatické testy na to nikdo nepíše a selhává to tak nešikovně, že to člověk pozná až podle stížností uživatelů nebo z logů, které se u prestashopu moc neřeší.

Určitě ale composer.json hodně pomáhá a umí dost napovědět.
10.12.2019 23:20
7
Původně odeslal Jan Dezort
U každého scriptu software výrobce popisuje MAX: PHP kompatibilní. Zkusit test můžeš na svém hostingu, pokud váš poskytovatel podporuje SELECTOR PHP - PŘEPÍNAČ ZVLÁŠT NA KAŽDOU JINOU DOMÉNU. HNED POZNÁŠ jestli tvůj Prestashop je kompatibilní třeba na PHP 7.4.
Tuto funkci nemám, ale ještě mě napadlo, že bych zkusil testovat na localhostu.


Díky, vyzkouším Phan a PHPstan, který doporučil TomášX.


Původně odeslal TomášX
jako tvůrce to odzkouším. Existuje řada frameworků, které mě s tím pomohou, jeden s českými kořeny je třeba PHPStan, ale to je na prestashop vzhledem k množství jeho chyb nenasaditelné.

Maximální verze v dokumentaci nemusí být vypovídající, těžko někdo ví co nekompatibilního přinese další verze php, podrobná roadmapa a dopředná kompatibilita se v php moc nenosí.
Lze v PHPStan otestovat pouze kompatibilitu verzí PHP, nikde jsem se o tom nedočetl. Phan umí otestovat zřejmě jen PHP 7.0.


Původně odeslal tuk
Jaká verze PrestaShopu?

Jinak PrestaShop je v tomto trochu "nečitelný". Jedna věc je PrestaShop samotný. Tam se dají dohledat nějaké doporučení pro použití verze PHP a když se vyskytuje nějaká nekompatibilita, tak se za nějaký čas opraví.

Jenže o modulech neví nikdo nic určitého. Kontrola kompatibility s určitou verzí pomocí phpcs je použitelná jen z části a selže na věcech, které žádný takový nástroj nemůže odhalit.

V jiných systémech by normálně by stačilo podívat se na kompatibilitu do composer.json.
Mám Prestashop 1.6.1.24 provozovaný na PHP 5.3. Na novém serveru mám na výběr z PHP 7.0, 7.1, 7.2, 7.3

Četl jsem changelog u různých verzí Prestashop 1.6 a vyšlo mi, že je kompatibilní s verzí PHP 7.1

---------- Post added 10.12.2019 at 23:23 ----------

Jde mi spíše o otestování modulů než samotného Prestashopu.