пятница, 14 апреля 2017 г.

PHP. Работа с файлами. Работа с директориями

Узнаем, как работать с директориями, которые содержат наши файлы.

getcwd — текущая рабочая директория.
mkdir — создаёт директорию в текущей папке.
chdir — изменяет каталог. Это работает, как указатель.
rmdir — удаляет директорию.


/*
Мы уже знаем функции:
dirname — возвращает имя родительского каталога из указанного пути.
is_dir — определяет, является ли имя файла директорией.
*/

// getcwd(): Current Working Directory. getcwd — текущая рабочая директория
echo getcwd() . "<br />";

// mkdir — создаёт директорию в текущей папке
/*
Параметры:
1) Указываем имя директории.
2) Разрешение директории. По умолчанию принимает значение 0777, что означает самые широкие права.
*/
mkdir('new', 0777); // По умолчанию принимает значение 0777, что означает самые широкие права.

/*
Проверяем права папки и видим, что у нее стоит не 777, как мы задавали.
К этим разрешениям применяется маска или umask при создании новой папки.
У каждой системы установлена своя umask. По умолчанию это 0022.
Это значит, что из 0777 отнимается 0022. Получается 755.

755 (или -rwxr-xr-x) — каждый пользователь имеет право читать и запускать файл на выполнение,
владелец файла может его редактировать.

Мы можем использовать функцию umask(), чтобы изменить эту маску. umask — изменяет текущую umask.
Изменить разрешение можно chmod(). chmod — изменяет режим доступа к файлу.
*/

// Рекурсивое создание директории.
// Рекурсивное создание означает создание не только new, но и test и test2.
// То есть создастся все вниз по этой строке.
// Если мы создаем более одной папки, то указываем true.

mkdir('new/test/test2', 0777, true); // true означает создать рекурсивно и используется при создании вложенных папок.

// Изменение рабочей директории.
// chdir — изменяет каталог. Это работает, как указатель.
chdir('new'); // мы перемещаемся в директорию new

// Удаление директории. Она должна быть закрыта и пуста!
// rmdir — удаляет директорию
rmdir('test/test2'); // удаляет папку test2

/*
Есть некоторые скрипты, которые могут удалить директорию, в которой есть файлы.
Эти скрипты могут рекурсивно удалить все, что находится внутри этой директории.
 */

Комментариев нет:

Отправить комментарий

Materialize-css. Футер

Сделаем футер и прижмем к низу страницы. Документация: https://materializecss.com/footer.html