Try using unpack()
--zak
----- Original Message -----
From: "Chris Mattmann" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Thursday, May 10, 2001 2:54 PM
Subject: [PHP] Binary Data File reading
> Hi there-
>
> Does anyone have any clue as to what may be causing this problem.
I am
>
> trying to read from a binary data value that has temperature values stored
in it
>
> in short integer format. So basically, for every 2 bytes of binary data,
that value
>
> in short integer is the temperature value. I have written a simple C
program to read
>
> in the values from the out.bin binary data file I have, and echo them back
to the console:
>
> It prints out the correct values, here is the C program that I used:
>
> #include<stdio.h>
>
> void main(void)
>
> {
>
> FILE *fin;
>
> short buffer[1];
>
> int num_read;
>
> fin = fopen("out.bin","r");
>
> num_read=1;
> while(num_read>0) {
> num_read = fread(buffer, sizeof(short), 1, fin);
> printf("%d,",buffer[0]);
> }
>
> fclose(fin);
> return(1);
>
> }
>
> I am trying to write a php file to do the exact same thing, except instead
of printing
>
> out the values, I'm going to store them in an array. Anyways, the php
script I've written
>
> looks like this:
>
> <?php
>
> $fp = fopen("out.bin","rb");
>
> $str = fread($fp,2);
>
> while($str)
>
> {
>
> $str = (int)$str;
>
> printf("%d,",$str);
>
> $str = fread($fp,2);
>
> }
>
> ?>
>
> The output I get from the php script is complete garble(a whole bunch of
0's, some 1's, some random
>
> int values, etc. I know that PHP doesn't exactly have a short int type, i
know that
>
> their integers are actually stored in the C LONG_INT type, which are 8
byte integers. Do
>
> you think that this may be affecting my script, and if it is, does anyone
know of any
>
> workarounds? Your help would be greatly appreciated.
>
> Thanks in advance.
>
> -------------------------------------------------------
> Chris Mattmann
> Science Data Management and Archiving
> [EMAIL PROTECTED]
> NASA-JPL Pasadena, CA 91109-8099
> Office: 300-324C
> Phone: 818-354-8810
>
>
>
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]