in reply to Testing whether a value is in a range.

I'm assuming that for any lookup, you know what country you're working with, otherwise two countries that use the same number range will conflict. (The only example I can think of offhand is that GB and CA codes might collide.)

Anyway, the one solution I don't see mentioned yet is SQL! I remember seeing somewhere around here a SQL module that was lightweight and could do this.

SELECT airport FROM maptable WHERE postal_code_low < $mycode AND postal_code_high > $mycode AND country_code = 'GB'

Index the table by country_code, postal_code_low, and postal_code_high, and you're in business. All you have to do is load the data into the database.

Or, I've completely missed the point and wasted everyone's time.
--
Spring: Forces, Coiled Again!