Запись прямо к диску с php

Я хотел бы создать сценарий загрузки, который не подпадает под предел загрузки php. Мог бы быть случай, где я должен загрузить 2 ГБ, или больший файл, и я не хочу должным быть изменять целое выполнение сервера на вышеупомянутые 32 МБ.

Существует ли способ записать прямо к диску из php?

Какой метод Вы могли бы предложить, чтобы кто-то использовал бы для выполнения этого? Я считал вокруг переполнения стека, но не вполне нашел то, что я надеюсь делать.

5
задан Charles 24 December 2012 в 21:20
поделиться

3 ответа

Невозможно загрузить файл, размер которого превышает допустимые пределы PHP, с помощью PHP, это очень просто.

Возможные обходные пути включают использование клиентской технологии - такой как Java , не уверен, что Flash и Javascript могут это сделать - для «разделения» исходного файла на более мелкие части.

1
ответ дан 14 December 2019 в 13:28
поделиться

Простой ответ - вы не можете из-за того, как apache обрабатывает данные постов.

Если вы твердо намерены иметь возможность загружать большие файлы и по-прежнему использовать php для бэкенда, вы можете написать простой приемник загрузки файлов, используя php sockets api, и запустить его как отдельный сервис. Некоторые хорошие детали можно найти на http://devzone.zend.com/article/1086#Heading8

2
ответ дан 14 December 2019 в 13:28
поделиться

Вы можете делать некоторые интересные вещи на основе сокетов PHP. Думали ли вы о написании апплета на Java для загрузки файла в слушающий демон PHP? Это, вероятно, не будет работать на большинстве профессиональных хостинг-провайдеров, но если у вас есть собственный сервер, вы можете заставить его работать. Рассмотрим следующую последовательность:

  1. Аплет запускается, отправляет запрос в PHP для открытия прослушивающего сокета.
    1. (Вам, вероятно, придется написать базовый веб-браузер на Java, чтобы это работало)
  2. Java-апплет считывает файл из файловой системы и загружает его в PHP через сокет, созданный на шаге 1.

Не самый чистый способ сделать это, но если вы отключите тайм-аут PHP-скрипта в вашем файле php.ini, то вы можете заставить что-то работать.

1
ответ дан 14 December 2019 в 13:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: