## New Functions

PHP 5.3 introduced some new functions:

PHP Core:

- array_replace() - Replaces elements from passed arrays into one array.
- array_replace_recursive() - Recursively replaces elements from passed arrays into one array.
- class_alias() - Creates an alias for a user defined class.
- forward_static_call() - Call a user function from a method context.
- forward_static_call_array() - Call a user function from a method context, with the arguments contained in an array.
- gc_collect_cycles() - Forces collection of any existing garbage cycles.
- gc_disable() - Deactivates the circular reference collector.
- gc_enable() - Activates the circular reference collector.
- gc_enabled() - Returns the status of the circular reference collector.
- get_called_class() - Return the name of the class a static method is called in.
- gethostname() - Return the current host name for the local machine.
- header_remove() - Removes an HTTP header previously set using the header() function.
- lcfirst() - Make a string's first character lowercase.
- parse_ini_string() - Parse a configuration string.
- quoted_printable_encode() - Convert an 8 bit string to a quoted-printable string.
- str_getcsv() - Parse a CSV string into an array.
- stream_context_set_default() - Set the default stream context.
- stream_supports_lock() - Return `TRUE` if the stream supports locking.
- stream_context_get_params() - Retrieve parameters from a stream context.
- streamWrapper::stream_cast() - Retrieve the underlying stream resource.
- streamWrapper::stream_set_option() - Change stream options

Date/Time:

- date_add() - Adds an amount of days, months, years, hours, minutes and seconds to a DateTime object.
- date_create_from_format() - Returns a new DateTime object formatted according to the given format.
- date_diff() - Returns the difference between two DateTime objects.
- date_get_last_errors() - Returns the warnings and errors from the last date/time operation.
- date_parse_from_format() - Get information about a given date.
- date_sub() - Subtracts an amount of days, months, years, hours, minutes and seconds from a DateTime object.
- timezone_version_get() - Returns the version of the timezonedb.

GMP:

- gmp_testbit() - Tests whether a bit is set.

Hash:

- hash_copy() - Copy hashing context.

IMAP:

- imap_gc() - Clears IMAP cache.
- imap_utf8_to_mutf7() - Encode a UTF-8 string to modified UTF-7.
- imap_mutf7_to_utf8() - Decode a modified UTF-7 string to UTF-8.

JSON:

- json_last_error() - Returns the last JSON error that occurred.

MySQL Improved:

- mysqli_fetch_all() - Fetches all result rows as an associative array, a numeric array, or both.
- mysqli_get_connection_stats() - Returns statistics about the client connection.
- mysqli_poll() - Poll connections.
- mysqli_reap_async_query() - Get result from async query.

OpenSSL:

- openssl_random_pseudo_bytes() - Returns a string of the given length specified, filled with pseudo-random bytes.

PCNTL:

- pcntl_signal_dispatch() - Calls signal handlers for pending signals.
- pcntl_sigprocmask() - Sets and retrieves blocked signals.
- pcntl_sigtimedwait() - Wait for signals with a timeout.
- pcntl_sigwaitinfo() - Wait for signals.

PCRE:

- preg_filter() - Perform a regular expression search and replace, returning only results which matched the pattern.

Semaphore:

- msg_queue_exists() - Check whether a message queue exists.
- shm_has_var() - Checks whether a specific key exists inside a shared memory segment.

The following functions are now natively implemented, making them available on all operating systems which can run PHP:

- acosh()
- asinh()
- atanh()
- expm1()
- log1p()