Sunday, September 23, 2007

php 4 vs php5

• ibase_rollback_ret() - Rollback transaction and retain the transaction context
• ibase_server_info() - Request statistics about a database
• ibase_service_attach() - Connect to the service manager
• ibase_service_detach() - Disconnect from the service manager
• ibase_set_event_handler() - Register a callback function to be called when events are posted
• ibase_wait_event() - Wait for an event to be posted by the database
iconv:
• iconv_mime_decode() - Decodes a MIME header field
• iconv_mime_decode_headers() - Decodes multiple MIME header fields at once
• iconv_mime_encode() - Composes a MIME header field
• iconv_strlen() - Returns the character count of string
• iconv_strpos() - Finds position of first occurrence of a needle within a haystack
• iconv_strrpos() - Finds the last occurrence of a needle within a haystack
• iconv_substr() - Cut out part of a string
Streams:
• stream_copy_to_stream() - Copies data from one stream to another
• stream_get_line() - Gets line from stream resource up to a given delimiter
• stream_socket_accept() - Accept a connection on a socket created by stream_socket_server()
• stream_socket_client() - Open Internet or Unix domain socket connection
• stream_socket_get_name() - Retrieve the name of the local or remote sockets
• stream_socket_recvfrom() - Receives data from a socket, connected or not
• stream_socket_sendto() - Sends a message to a socket, whether it is connected or not
• stream_socket_server() - Create an Internet or Unix domain server socket
Date and time related:
• idate() - Format a local time/date as integer
• date_sunset() - Time of sunset for a given day and location
• date_sunrise() - Time of sunrise for a given day and location
• time_nanosleep() - Delay for a number of seconds and nanoseconds
Strings:
• str_split() - Convert a string to an array
• strpbrk() - Search a string for any of a set of characters
• substr_compare() - Binary safe optionally case insensitive comparison of two strings from an offset, up to length characters
Other:
• convert_uudecode() - decode a uuencoded string
• convert_uuencode() - uuencode a string
• curl_copy_handle() - Copy a cURL handle along with all of its preferences
• dba_key_split() - Splits a key in string representation into array representation
• dbase_get_header_info() - Get the header info of a dBase database
• dbx_fetch_row() - Fetches rows from a query-result that had the DBX_RESULT_UNBUFFERED flag set
• fbsql_set_password() - Change the password for a given user
• file_put_contents() - Write a string to a file
• ftp_alloc() - Allocates space for a file to be uploaded
• get_declared_interfaces() - Returns an array of all declared interfaces
• get_headers() - Fetches all the headers sent by the server in response to a HTTP request
• headers_list() - Returns a list of response headers sent (or ready to send)
• http_build_query() - Generate URL-encoded query string
• image_type_to_extension() - Get file extension for image-type returned by getimagesize(), exif_read_data(), exif_thumbnail(), exif_imagetype()
• imagefilter() - Applies a filter to an image using custom arguments
• imap_getacl() - Gets the ACL for a given mailbox
• ldap_sasl_bind() - Bind to LDAP directory using SASL
• mb_list_encodings() - Returns an array of all supported encodings
• pcntl_getpriority() - Get the priority of any process
• pcntl_wait() - Waits on or returns the status of a forked child as defined by the waitpid() system call
• pg_version() - Returns an array with client, protocol and server version (when available)
• php_check_syntax() - Check the syntax of the specified file
• php_strip_whitespace() - Return source with stripped comments and whitespace
• proc_nice() - Change the priority of the current process
• pspell_config_data_dir() - Change location of language data files
• pspell_config_dict_dir() - Change location of the main word list
• setrawcookie() - Send a cookie without URL-encoding the value
• scandir() - List files and directories inside the specified path
• snmp_read_mib() - Reads and parses a MIB file into the active MIB tree
• sqlite_fetch_column_types() - Return an array of column types from a particular table
4.New Directives
There were some new php.ini directives introduced in PHP 5. Here is a list of them:
• mail.force_extra_parameters - Force the addition of the specified parameters to be passed as extra parameters to the sendmail binary. These parameters will always replace the value of the 5th parameter to mail(), even in safe mode
• register_long_arrays - allow/disallow PHP to register the deprecated long $HTTP_*_VARS
• session.hash_function - select a hash function (MD5 or SHA-1)
• session.hash_bits_per_character - define how many bits are stored in each character when converting the binary hash data to something readable (from 4 to 6)
• zend.ze1_compatibility_mode - Enable compatibility mode with Zend Engine 1 (PHP 4)
5.Databases
There were some changes in PHP 5 regarding databases (MySQL and SQLite).
In PHP 5 the MySQL client libraries are not bundled, because of license problems and some others. .
There is also a new extension, MySQLi (Improved MySQL), which is designed to work with MySQL 4.1 and above.
Since PHP 5, the SQLite extension is built-in PHP. SQLite is an embeddable SQL database engine and is not a client library used to connect to a big database server (like MySQL or PostgreSQL). The SQLite library reads and writes directly to and from the database files on disk.
6.New Object Model
In PHP 5 there is a new Object Model. PHP's handling of objects has been completely rewritten, allowing for better performance and more features. In previous versions of PHP, objects were handled like primitive types (for instance integers and strings). The drawback of this method was that semantically the whole object was copied when a variable was assigned, or passed as a parameter to a method. In the new approach, objects are referenced by handle, and not by value (one can think of a handle as an object's identifier).
Many PHP programmers aren't even aware of the copying quirks of the old object model and, therefore, the majority of PHP applications will work out of the box, or with very few modifications
The new Object Model is documented at the http://www.php.net/manual/en/language.oop5.php
7.Error Reporting
As of PHP 5 new error reporting constant E_STRICT was introduced with value 2048. It enables run-time PHP suggestions on your code interoperability and forward compatibility, that will help you to keep latest and greatest suggested method of coding. E.g. STRICT message will warn you on using deprecated functions.
Note: E_ALL does not include E_STRICT so it's not enabled by default

No comments: