V tomto krátkom článku sa opäť venujem chybám z PHP, ktoré som mal počas tvorby posledného PHP projektu. Celkovo sa v projekte vyskytli tri chyby, ktoré som musel riešiť. Toto je druhá z nich.
Chyby sú o to zákernejšie, že vznikli v produkcii, resp. vo vývojom prostredí všetko bežalo bez problémov, problém nastal až po nakopírovaní finálnej aplikácie na server.
V tomto prípade mi nefungoval zápis
$index = random_int(0, $clength - 1);
Zápis som musel nahradiť nasledujúcim kódom
mt_srand();
$index = mt_rand(0, $clength - 1);
Opäť ako aj v predchádzajúcom článku o problémoch s PHP išlo o podporu verzie PHP na serveri. Zápis pre random_int() vyžaduje mať aktivovanú verziu PHP 7 a vyššiu. V opačnom prípade bude chybové hlásenie.
Problém bol o to zložitejší, že ja som mal nastavenú verziu PHP 7.4, no ako sa ukázalo, táto informácia bola pre doménu, nie pre subdomény, kde bola automaticky nastavená verzia 5.3.
Záver
Ak z nejakého dôvodu nemôžete používať verziu 7.x tak namiesto zápisu
$number = random_int(0, $max);
môžete použiť zápis
mt_srand();
$number = mt_rand(0, $max);