Skip to content

GeoIP 1.0.5 released

I just released GeoIP 1.0.5 on PECL. An excerpt from the ChangeLog:

  • Small bug in phpinfo() when printing version number could crash PHP. (in 1.0.4)
  • Fix memleaks, bug #14851
  • Small patch for MacPorts by jhohle
  • Add geoip_time_zone_by_country_and_region() and geoip_region_name_by_code() (thanks to Sid Dunayer)
  • Add continent_code field for City Database, only if using GeoIP lib 1.4.3 or newer

Since most of the features are very dependent on the GeoIP Library version you're using, I do suggest you upgrade the installed library on your system before upgrading the PECL counter-part.

I have also upgraded the PHP documentation, which should appear on the mirrors by next week. I am now working on documenting the added functions, mostly that FIPS 10-4 thing in geoip_region_name_by_code().

One thing to note about this release though is that the time zones returned by geoip_time_zone_by_country_and_region() with library 1.4.5 don't seem to make any sense here. I have opened up a bug report on SourceForge for libgeoip, will see if it gets resolved in the next release.

In the meantime, happy IP Geo Localization with PHP!

All new blog!

Please welcome... wait for it... my new blog! (you need to use Barney Stinson's voice for that phrase)

Ok, so what's the catch? It looks like the other one, what's different? In fact, what changed is the machine behind.

After many problems with ServerPronto, I decived to move everything back in Canada. My new hosting company is now iWeb, right here in Montreal. I wasn't sure at first, since iWeb is a little bit more expensive than others. After trying it, I am more than pleased with the service.

For example, when installing my dedicated server, I wanted to switch my Debian to Gentoo. I knew it was risky, but I needed my server to run Gentoo, mainly for seldom ebuild development. Everything ran smoothly, but I unfortunately made a typo in the network config file. Upon reboot, I couldn't access the machine and was stuck with a bricked server.

With a simple support ticket, I was able to get an IP KVM connected to my server quickly and interacted with it to bring the network back online. It might seem like a trivial event, but I am not sure what would have happened if it was hosted elsewhere. I would have probably ended up paying someone to type the commands on the shell, which is not always an easy task when the other person is more than a thousand kilometers away.

DoubleMetaphone on PECL

It's finally there... after quite some requests by external people, I've created a doublemetaphone module on PECL.

After some house-keeping, version 0.1.2 was born. It is still alpha, although it should not segfault or anything. The only reason going alpha is because I'm not sure the API should stay the same. After some feedbacks, I'll ramp-up beta and GA.

So, after a pecl install doublemetaphone, you can enjoy using the new double_metaphone() function.

If you have any comments, or found bugs, leave a comment here, or on the PECL bug system.

PECL GeoIP on Gentoo

Even if the GeoIP bindings for PHP have been available for more than a year on PECL, I have never took the time to write an ebuild for it on Gentoo.

Until now, I was using the PEAR installer, which is great for installing PECL packages. The only downside is that those packages won't be seen when doing a world upgrade with Gentoo. You then have two choices:

  1. Do an emerge world followed by a pecl upgrade-all
  2. Install PECL packages via Portage

Since I'm lazy, I like the fact to upgrade everything at one place.

The hard part now is to write the ebuild, which is really simple considering the fact that it is a PECL package and that eclass are available.

One thing to another, this ebuild is now part of the testing overlay for Gentoo. If no bugs are found, it should be part of the normal tree shortly.

Double Metaphone

Some time ago, I wrote a wrapper around the CPAN module Text-DoubleMetaphone by Maurice Aubrey for PHP. This allowed the use of the DoubleMetaphone algorithm with PHP. While the PHP core already has Metaphone, it lacks support for the second version, which handles latin languages a bit more correctly.

At the time, I did post an email to the PECL dev lists, but didn't receive any positive or negative answer. I thus never decided to publish it on PECL, thinking people weren't interested in the package - I was wrong. I have been contacted this week by email, asking if I could send the package to someone, if I still had the code. Well, lucky me, it had not the time to bitrot.

So here we go. If you need Double Metaphone inside PHP, grab doublemetaphone-0.1.0.tgz from here and follow the instructions on how to install PECL packages. You should be able to do something similar to this:

olivier@geeko-book $ pecl download
downloading doublemetaphone-0.1.0.tgz ...
Starting to download doublemetaphone-0.1.0.tgz (7,450 bytes)
.....done: 7,450 bytes

olivier@geeko-book $ sudo pecl install doublemetaphone-0.1.0.tgz

Now, don't forget to dl() the extension (bad...) or add it to your php.ini (good!)

If this works for you and you find it useful, you can always visit my PECL profile. It does have a wishlist URL if you have an urgent need to thank me.