Changes to INI file handling
Migrating from PHP 5.1.x to PHP 5.2.x
Migrating from PHP 5.2.x to PHP 5.3.x
PHP Manual

## Other changes

- SplFileInfo::getpathinfo now returns information about the path name.
- SplObjectStorage now has ArrayAccess support. It is now also possible to store associative information with objects in SplObjectStorage.
- In the GD extension, there is now pixelation support available through the imagefilter function.
- var_dump output now includes private object properties.
- session_start now returns `FALSE` when session startup fails.
- property_exists now checks the existence of a property independent of accessibility (like method_exists).
- Stream wrappers can now be used by include_path.
- The `initial` parameter for array_reduce can now be of any type.
- The directory functions opendir, scandir, and dir now use the default stream context if no explicit context is passed.
- crypt now has Blowfish and extended DES support, and crypt features are now 100% portable. PHP has its own internal crypt implementation which drops into place when support for crypt or crypt_r is not found.
- getopt now accepts "long options" on all platforms. Optional values and = as a separator for short options are now supported.
- fopen has a new mode option (n), which passes `O_NONBLOCK` to the underlying open() system call. Note that this mode is not currently supported on Windows.
- getimagesize now supports icon files (.ico).
- The mhash extension have moved to PECL, but the Hash extension have been modified to support mhash if PHP is compiled with --with-mhash. Note that the Hash extension does not require the mhash library to be available whether or not the mhash emulation is enabled.