Re: Uploading large files with HTTP_Request class
| From: | Matijn Woudt | Date: | Thu, 31 May 2012 21:08:24 +0000 |
| Subject: | Re: Uploading large files with HTTP_Request class | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-318064@lists.php.net to get a copy of this message | ||
On Thu, May 31, 2012 at 12:28 PM, Voß, Marko
<Marko.Voss@fiz-karlsruhe.de> wrote:
> Hello,
>
> I need to perform uploading of large files using the HTTP_Request class:
>
> http://pear.php.net/manual/package.http.http-request.php
>
> I am *not* using this one:
>
> http://php.net/manual/en/class.httprequest.php
>
>
> The HTTP_Request class support the following functions:
>
> setBody() and addFile()
>
> The addFile()-function however simulates a form field and the server application does not read
> the incoming file from such a field. I have to put the file content as a stream through the body.
>
> Adding the file content using the setBody()-function will of course cause an out of memory
> error:
>
> $fp = fopen($filename, 'r');
> $request->setBody(fread($fp, $filesize($filename)));
> $fclose($fp);
> $response = $request->sendRequest();
>
>
> How am I supposed to do that with this class? Are there any alternatives, which do not force me
> to add new PHP dependancies/libraries to the project? I am writing a library and do not want to
> force the users to add dependancies to their projects in order to use this library.
>
> I am currently using PHP 5.3.0.
>
>
> Thank you and best regards,
> Marko
>
>
If you don't want any additional libraries, I would suggest writing
such a request yourself with the use of simple sockets.
- Matijn