PHP port of Underscore.js, modified to work in PHP >=5.4 without warnings.