Re: Re: Better way to store data in memory?

From: Date: Tue, 24 Jul 2007 05:36:05 +0000
Subject: Re: Re: Better way to store data in memory?
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-259411@lists.php.net to get a copy of this message
On 7/23/07, Dan <frozendice@gmail.com> wrote: Is there nothing like streams or a data type that's meant to hold lots of binary data in PHP?
introduced back in php4; every time you call include, youre invoking an underlying stream functions <http://www.php.net/manual/en/ref.stream.php>. the big feature is you can define custom wrappers and filters. also various streams can be chained together to process data. i havent worked with them directly, but these functions are supposedly considered optimal when dealing with large files because the data can be buffered. also, you should check out the functions pack <http://www.php.net/manual/en/function.pack.php> unpack <http://www.php.net/manual/en/function.unpack.php> these are designed for direct manipulation of binary data. i have never worked with modification of image files within code except to resize them w/ gd, so this is getting out of my experience, but im pretty confident these tools may be of some help. -nathan On 7/23/07, Dan <frozendice@gmail.com> wrote:
Is there nothing like streams or a data type that's meant to hold lots of binary data in PHP? - Dan "Richard Davey" <rich@corephp.co.uk> wrote in message news:859866741.20070723175000@corephp.co.uk... Hi php-general collective, I'm building up some image data in my PHP script (ready for output to the browser). Having to do some complex per pixel manipulation, which is fine - but I'm just wondering is there a quicker / more efficient way of storing the pixel data than in an array? At the moment I hold it in $array[$x][$y], which makes the drawing loop painless, but it's creating an array with 307,200 elements which is proving to be quite slow. As I'm only storing fixed width byte values is there an alternative method? For example the ability to read/write to a chunk of memory instead? (so I can read out whole strips of data rather than one by one?) I was looking at the Shared Memory functions, but that isn't exactly what I need (I don't want it shared, I want it process specific) Cheers, Rich -- Zend Certified Engineer http://www.corephp.co.uk "Never trust a computer you can't throw out of a window" -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php


« previous php.general (#259411) next »