Рубрики
Uncategorized

Примеры использования операций с каталогами opendir (), readdir () и scandir () в PHP

Автор оригинала: David Wong.

Эта статья иллюстрирует использование операций с каталогами opendir (), readdir () и scandir () в php . Поделитесь для вашей справки следующим образом:

opendir(путь,контекст) В случае успеха функция возвращает поток каталогов или false и ошибку. Вы можете скрыть вывод ошибок, добавив “@” перед именем функции.

Функция readdir() возвращает opendir() Запись в дескрипторе открытого каталога. В случае успеха функция возвращает имя файла, в противном случае значение false.

scandir() Функция возвращает массив, содержащий файлы и каталоги по указанному пути. Если это удается, он возвращает массив, а если не удается, возвращает значение false. Если каталог не является каталогом, возвращается логическое значение false

Оплатите код для чтения каталога, найденный в 2 абзацах. Он действителен для личного тестирования.

Отображение имен файлов в каталогах

// Open the directory and read its contents
if (is_dir($dir)){
 if ($dh = opendir($dir)){
  while (($file = readdir($dh)) !== false){
   echo "filename:" . $file . "
"; } closedir($dh); } }

Копирование файлов из одного каталога в другой

copy_dir($from_dir,$to_dir);
function copy_dir($from_dir,$to_dir){
  if(!is_dir($from_dir)){
    return false;
  }
  echo "\r\n from:",$from_dir,'---to',$to_dir;
  $from_files = scandir($from_dir);
  // If there is no target directory, try to create it
  if(!file_exists($to_dir)){
    @mkdir($to_dir);
  }
  if(!empty($from_files)){
    foreach ($from_files as $file){
      if($file == '.' || $file == '..' ){
        continue;
      }
      If (is_dir ($from_dir.'/'. $file){// If it is a directory, call itself
        copy_dir($from_dir.'/'.$file,$to_dir.'/'.$file);
      } else {// Copy directly to the target folder
        copy($from_dir.'/'.$file,$to_dir.'/'.$file);
      }
    }
  }
}

Больше читателей, интересующихся контентом, связанным с PHP, могут ознакомиться с темами этого сайта: Краткое описание навыков работы с каталогами PHP, Краткое описание работы с файлами PHP, Краткое описание общих алгоритмов и навыков обхода PHP, Структура и алгоритмы данных PHP, Краткое описание алгоритмов программирования PHP, Полная коллекция навыков работы с массивами PHP и т. Д. “Краткое описание использования строки PHP” и “Краткое описание общих навыков работы с базой данных php”

Я надеюсь, что эта статья будет полезна для разработки PHP – программ для всех.