wp_mkdir_p()
Рекурсивно створює директорію (папку) вказаним шляхом. Нічого не робить, якщо папка вже є. Надає права батьків новим папкам.
Це обгортка для базової функції php mkdir() .
- Функція очищає переданий шлях, прибираючи у ньому можливе подвійні слеши // .
- Зберігає протокол, наприклад
file://
. - Створювані папки успадковують права батьків.
- Шлях не може містити
../
– у цьому випадку каталог не буде створений.
1 раз – 0.0002389 сек
(швидко) | 50000 разів – 0.16 сек
(дуже швидко) |
PHP 7.3.3, WP 5.2.3
(швидко) | 50000 разів – 0.16 сек
(дуже швидко) |
PHP 7.3.3, WP 5.2.3
Хуків немає.
Повертає
true|false
. Чи було створено вказану директорію. true також буде повернуто, якщо папка вже існує.
Використання
wp_mkdir_p ($ target);
-
$target
(рядок) (обов’язковий) - Повний шлях до директорії, яку потрібно створити.
Приклади
#1 Демонстрація роботи функції
Припустимо, нам потрібно створити директорію в каталозі uploads
if ( wp_mkdir_p('a/really/deep/sub/directory') ){ echo 'Каталог створений!'; }
#2 Створення каталогу всередині /uploads
Цей приклад показує, як створити нову папку в каталозі /uploads під час активації плагіна. Може бути корисно, коли плагін має функції імпорту файлів або можливість завантажувати файли і ви хочете зберігати всі файли в певну папку.
function myplugin_activate() { $upload = wp_upload_dir(); $upload_dir = $upload['basedir']; $upload_dir = $upload_dir. '/mypluginfiles'; if ( ! wp_mkdir_p( $upload_dir ) ){ echo "Не вдалося створити каталог mypluginfiles"; } } register_activation_hook( __FILE__, 'myplugin_activate');
список змін
З версії 2.0.1 | Введено. |