I started working with Jake Olefsky’s Exifer last night to see how it works and what I need to do to integrate it into photos. Looks like it will be pretty easy, I removed some of the human-friendly labels he had added (‘f 3.5′ instead of just ’3.5′ for aperture, ’28 mm’ instead of just ’28′ for focal length, etc.) so that I can do comparison searching (focal length greater than 50) on the values in the database. I’ll add the human-friendly labels back in for display – I just don’t want them in the database. I need to do more extensive testing, but I think I’m pretty much done and can plug it in. This means you don’t need PHP compiled with exif enabled to use my photo database.
I’d reported earlier than Exifer returned a multi-dimensional array while the built-in PHP exif reading function returned a flat array. This is incorrect – both of them return a multi-dimensional array. When I was first writing the code to deal with the exif data several years ago I copied some code from the php.net manual and didn’t fully understand what I was doing.
Anyway, I’ve re-written a bit of that code and photos 3.3 will be nicer because of it.