wp_upload_bits()
Створює файл із зазначеним контентом у папці завантажень (upload). Повертає дані завантаженого файлу. Не розміщує дані про файл у БД.
Якщо завантаження викличе помилку, то ключ масиву ” error “, що повертається, міститиме повідомлення про помилку.
Функція порівнює розширення файлу зі списком дозволених до завантаження розширень див wp_check_filetype_and_ext() .
Уніфікує ім’я файлу.
Ця функція не переміщує завантажений файл до папки завантажень. Вона створює новий файл із вмістом, переданим у $bits. Якщо вам потрібно перемістити файл, то рахуйте вміст файлу і потім передайте дані цієї функції, вона створить новий файл. Після цього можна видалити старий файл.
Права доступу до файлу будуть встановлені автоматично відповідно до параметрів системи.
Хуки з функції
Використання
$upload = wp_upload_bits($name, $deprecated, $bits, $time);
-
$name
(рядок) (обов’язковий) - Назва файлу, що створюється. Вказувати потрібно повну назву із розширенням.
-
$deprecated
(null) (обов’язковий) - Чи не використовується, потрібно ставити null.
-
$bits
(рядок) (обов’язковий) - Контент створюваного файлу у вигляді рядка. Зазвичай він виходить з допомогою функції file_get_contents().
-
$time
(рядок) -
Час у форматі
РРРР/ММ – куди поміщати файл у папці завантажень. Якщо в налаштуваннях знято галочку з пункту “Поміщати завантажені мною файли в папки за місяцем та роком”, то цей параметр не має сенсу. За промовчанням, файл буде завантажуватися в поточний місяць цього року.
Типово: null
Приклади
#1 Демонстрація
Цей приклад показує, як створити файл у папці завантажень. Давайте створимо картинку. Візьмемо контент зовнішньої картинки за допомогою file_get_contents() та запишемо її в папку завантажень нашого сайту:
$cont = file_get_contents('http://example.com/some_img.png'); $new_file_name = 'uploaded.png'; $ upload = wp_upload_bits ($ new_file_name, null, $ cont); // перевіримо чи вийшов запис if( $upload['error'] ) echo 'Запис викликав помилку: '. $upload['error']; else echo 'Запис удався! Шлях файлу: '. $upload['file'] .'; УРЛ файлу: '. $upload['url'];
У прикладі ми бачимо, що масив $upload виглядає так:
Array ( [file] => /home/user/site/public_html/wp-content/2013/03/uploaded.png [url] => http://example.com/wp-content/uploads/2013/03/uploaded.png [type] => image/png [error] => )
Тепер, наприклад, ми можемо вивести на екран завантажену картинку, використовуючи url:
<img src="<?php echo $upload['url'] ?>" />
#2 Створення файлу з форми
Цей приклад показує, як створити файл, переданий у формі. Передбачається, що запит зроблено з форми з полем field1:
$upload = wp_upload_bits( $_FILES["field1"]["name"], null, file_get_contents( $_FILES["field1"]["tmp_name"]) );
Ця функція намагається зберегти копію файлу, що завантажується в каталог завантажень WordPress. Вона також виконує функцію безпеки, перевіряючи файл (тип файлу, розмір тощо) і повертає помилку, якщо якийсь із параметрів не допустимо. Після завантаження бажано видалити тимчасовий файл.
список змін
З версії 2.0.0 | Введено. |