An Easier Solution to the Nonlinear Obfuscated Integer IDs Problem
I'd rather just use UUIDs. They can be linear or non-linear and have basically zero chance of collision when generated by independent sources -- no central ID-granting service required.
I also find it laughable that these schemes talk about AES being 'expensive' and then produce pure-PHP alternatives. On a modern CPU AES absolutely flies compared to instantiating a PHP object and calling a method on it.