I can't believe I didn't notice PHP has Anonymous Functions and Closures!
Once they have functions as first class objects, then there is a chance that it will stop sucking!