Re: Storing binary data in mySQL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 27.10.2016 at 02:40, Jacob Kruger wrote:

> Next question then - how did you read the file's contents into a
> variable before encoding it?
> 
> Ask since, base64_encode requires a string parameter, and, if I read the
> files in using fopen($s_file_name, "rb"), then it returns a resource,

fopen() isn't supposed to read a file, but it returns a resource which
can be passed to fread(), for instance, to read the contents of the
file.  Probably the simplest solution:

  <?php
  $stream = fopen($file_name, 'rb');
  $contents = stream_get_contents($stream);
  fclose($stream);

After that, $contents is supposed to hold the exact contents of the file.

> whereas if I use file_get_contents, to read the audio clips contents in
> as a string, and then encode them, they still get decoded as a corrupted
> version, most likely due to reading in binary data the wrong way?

I'm not sure if there are any issues with file_get_contents() wrt.
automatic line ending conversion – at least I've never noticed any.  But
you can easily check that for yourself: read the file with
file_get_contents(), and compare the strlen() of the return value with
the file size.

-- 
Christoph M. Becker

-- 
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[Index of Archives]     [PHP Home]     [PHP Users]     [PHP Database Programming]     [PHP Install]     [Kernel Newbies]     [Yosemite Forum]     [PHP Books]

  Powered by Linux