Функцыя opendir

Функцыя opendir адкрывае паказаную дырэкторыю і вяртае яе дэскрыптар (рэсурс), які затым выкарыстоўваецца з функцыямі чытання змесціва дырэкторыі. Пасля завяршэння работы з дырэкторыяй яе неабходна закрыць з дапамогай closedir.

Сінтаксіс

phpopendir(string $path, resource $context = null): resource|false

Прыклад

Базавае выкарыстанне opendir:

php<?php
  $dir = opendir('/path/to/directory');
  
  if ($dir) {
    while (($file = readdir($dir)) !== false) {
      echo $file . "\n";
    }
    closedir($dir);
  }
?>

Вынік выканання кода (прыклад вываду):

php"."
".."
"file1.txt"
"subdirectory"

Прыклад

Апрацоўка памылкі адкрыцця дырэкторыі:

php<?php
  $dir = opendir('/nonexistent/path');
  if ($dir === false) {
    echo "Не атрымалася адкрыць дырэкторыю";
  } else {
    // Работа з дырэкторыяй
    closedir($dir);
  }
?>

Вынік выканання кода:

php"Не атрымалася адкрыць дырэкторыю"

Прыклад

Выкарыстанне з кантэкстам струменя:

php<?php
  $context = stream_context_create();
  $dir = opendir('ftp://user:password@example.com/', $context);
  if ($dir) {
    // Чытанне змесціва FTP-дырэкторыі
    closedir($dir);
  }
?>

У гэтым прыкладзе адкрываецца злучэнне з FTP-серверам для чытання змесціва аддаленай дырэкторыі.

Глядзіце таксама

  • функцыю readdir,
    якая чытае змесціва адкрытай дырэкторыі
  • функцыю closedir,
    якая закрывае дэскрыптар дырэкторыі
  • функцыю scandir,
    якая вяртае спіс файлаў і дырэкторый у выглядзе масіва