Имеется код который читает текстовые файлы в массив PHP: $arrays = file("177c.lst"); for ($i=0, $c=count($arrays); $i<$c; $i++) { echo arrays[$i]; } $arrays = file("119j.lst"); for ($i=0, $c=count($arrays); $i<$c; $i++) { echo $arrays[$i]; } $arrays = file("272.lst"); for ($i=0, $c=count($arrays); $i<$c; $i++) { echo arrays[$i]; } Вопрос заключается в том, как оптимизировать этот код и считать все файлы в единый массив. P.S. в массив придется читать около 30 файлов.
@antropoied можно в функцию засунуть, как то так: PHP: arrays = []; function arratFile($files){ for ($i=0, $c=count($file); $i<$c; $i++) { arrays[$i] = $file; } } arratFile(file("177c.lst")); return arrays; Да и не по названиям файлов искать а по расширению .lst, как то так: PHP: $dir = ''; //директория где лежат файлы $files = scandir($dir); //сканим $result = ""; foreach ($files as $file){ if(preg_match('/\.(lst)/', $file)){ $result .= $file.'<br>'; } } echo $result;
PHP: $arrays[] = array(); function arratFile($file){ for ($i=0, $c=count($file); $i<$c; $i++) { $arrays[$i] = $file; } } arratFile(file('934.lst')); return $arrays; к сожалению ничего не изменилось, код не работает.
PHP: function arrayFile($arrays){ for ($i=0, $c=count($arrays); $i<$c; $i++) { echo arrays[$i]; } } arrayFile(file("177c.lst")); arrayFile(file("119j.lst")); arrayFile(file("272.lst")); Что вам дает бездумное копирование?
PHP: $listing = [ '177c.lst', '119j.lst', '272.lst', # ... ]; $content = array_map ( 'file', $listing ); print_r ($content); --- Добавлено --- PHP: foreach ( $content AS $b ) { echo implode ( '<br>' . PHP_EOL, $b ) . '<br>' . PHP_EOL; }