Загрузить файл двоичных данных в переменную

Я ищу способ разрешить загрузку файлов, но вместо того, чтобы записывать файл на диск на веб-сервере, я хотел бы хранить двоичное содержимое в переменной. Я нашел простой пример для выполнения загрузки, но не могу найти способ предотвратить запись в файл и сохранить его в памяти.

Можно ли это сделать, и если да, то как?

<?php

$uploaddir = '/var/www/uploads/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo "<p>";

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
echo "File is valid, and was successfully uploaded.\n";
} else {
echo "Upload failed";
}

echo "</p>";
echo '<pre>';
echo 'Here is some more debugging info:';
print_r($_FILES);
print "</pre>";

?>

<form enctype="multipart/form-data" action="upload.php" method="POST">
<input type="hidden" name="MAX_FILE_SIZE" value="512000" />
Send this file: <input name="userfile" type="file" />
<input type="submit" value="Send File" />
</form>

1

Решение

Если вам нужен только загруженный файл для выполнения PHP, то

$uploadfile = file_get_contents($_FILES['userfile']['tmp_name']);

Позже, если вам нужно сохранить его в БД MySQL, вы всегда можете выполнить для него метод addlashes ().

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]