According to the manual, the ereg functions are not binary safe. The
superior-in-every-way preg functions are. Perhaps you could try using
preg_grep instead.
$result = preg_grep('/' . preg_quote($imagename) . '/', $file);
You may find that strstr or something is even simpler.
miguel
On Tue, 28 May 2002, Kevin Stone wrote:
> I'm trying to match file names associated with a 3DS file (a 3DS file is a
> common 3D file format). The file is binary by nature but as you can clearly
> see in the dump below the filenames themselves are stored as plain text.
> So I should be able to do a simple eregi() on the file and discover if the
> filename exists within that file or not, right?
>
> <? // here's just some simple test code...
> $imagename = "PYRSTN01.JPG";
>
> $path = "/home/placest/exchange/test.3ds";
> $fp = fopen($path, "r");
> if ($fp !== false)
> {
> $file = fread($fp, filesize($path));
> fclose($fp);
>
> $result = eregi($imagename, $file);
> if ($result == true)
> {
> echo "FOUND IT";
> }
> else
> {
> echo "COULD NOT FIND IT";
> }
> }
> ?>
>
> Here's a snipplet of the file dump to the screen. You can quite plainly see
> that "PYRSTN01.JPG" exists as text in this string. Now if I copy a portion
> of this string and paste it into my code of course it works and echos 'found
> it'. But if I perform the eregi() function on the raw string read directly
> from the file it prints 'could not find it'... why? Isn't it the same exact
> thing?
> -------------------------------------------------------------------
> .....0¡„ 0 Š ‡ €?¢30d£PYRSTN01.JPGQ£S£
> €?@vBox01AjAhƒ:oƒ:oƒ.....
> -----------------------------------------------------------------------
>
> To be honest I don't know or even care about the difference between ASCII
> and BINARY. In this case all I want to do is locate the plain text,
> "PYRSTN01.JPG" within the 3DS file string. But clearly I'm missing some
> vital bit of information or there's something I don't understand about binay
> strings being interpreted as ASCII? Anyone know how I can make this work?
>
> Much thanks,
> -Kevin
>
>
>
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php