Здравствуйте. Пользуюсь удобным скриптом для контроля целостности файлов на хостинге. С переходом на версию PHP 8 скрипт перестал работать. Помогите пожалуйста с заменой данной функцией в этих частях кода: PHP: while (list($ln, $line) = each($md5_from_file)) { list($md, $ff) = explode("\t", trim($line)); if ($md != $md5[$ff]) { $i++; $_ff = str_replace(ABSPATH, '/', $ff); $_ff = str_replace('//', '/', $ff); //if (file_exists($_SERVER['DOCUMENT_ROOT'].$ff)) if($md5[$ff]) { $mailBody .= "$i. $_ff - изменен" . "\r\n"; $error .= "<br />$i. $_ff - <font color='red'>изменен</font>"; }else { //var_dump($ff,$md,$md5[$ff],$md5);die(); $mailBody .= "$i. $_ff - удален" . "\r\n"; $error .= "<br />$i. $_ff - <font color='red'>удален</font>"; //echo '<font color="#FF0000">Файл <b><u>'.$_ff.'</u></b> отсутствует!<br></font>'; } unset($md5[$ff]); }else //SN unset($md5[$ff]); } PHP: while (list($ff, $md) = each($md5)) { $i++; $ff = str_replace(ABSPATH, '/', $ff); $ff = str_replace('//', '/', $ff); $error .= "<br />$i. $ff - новый"; $mailBody .= "$i. $ff - новый" . "\r\n"; } PHP: while (list($key, $dir) = each($aDir)) { find_md5(ABSPATH .'/'. $dir, 1); }
Привет, GaIN. замени на foreach 1. PHP: while (list($ln, $line) = each($md5_from_file)) на PHP: foreach($md5_from_file as $ln=> $line) 2. PHP: while (list($ff, $md) = each($md5)) на PHP: foreach($md5 as $ff=> $md) 3. PHP: while (list($key, $dir) = each($aDir)) на PHP: foreach($aDir as $key=> $dir)