CVS update: php31

From: Date: Fri, 21 Aug 1998 00:15:27 +0000
Subject: CVS update: php31
Groups: php.dev 
Request: Send a blank email to php-dev+get-375@lists.php.net to get a copy of this message
Date: Thursday August 20, 1998 @ 20:15 Author: zeev Update of /repository/php31 In directory asf:/tmp/cvs-serv18215 Modified Files: ChangeLog Log Message: Add memory_status(), may be useful in debugging and performance tuning Start a ChangeLog, we might as well do it now... Index: php31/ChangeLog diff -c php31/ChangeLog:2.0 php31/ChangeLog:2.1 *** php31/ChangeLog:2.0 Fri Jul 3 09:09:22 1998 --- php31/ChangeLog Thu Aug 20 20:15:26 1998 *************** *** 1,587 **** ! PHP 3.0 CHANGE LOG ChangeLog ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ! May 23 Version 3.0RC5 ! - The BC math library functions now compile in by default. ! - Fixed a bug in virtual() and other types of SSI's (e.g. <!--#exec). Under ! certain circumstances, this used to result in random problems. ! - Fixed a bug in virtual(). It was misbehaving if it was called before any ! other output. ! - Added mysql.default_port, mysql.default_host, mysql.default_user and ! mysql.default_password ini-file directives. ! - Improved handling of the MySQL default port. It now honors /etc/services ! and $MYSQL_TCP_PORT. ! - Fixed a crash in opening of broken ftp:// URLs, and improved error reporting ! in opening of URLs. ! - Fixed several non-critical scanner issues with syntax highlighting mode and ! the <script language=php> tag. ! - Fixed fseek on windows. (windows only): fseek will not return proper results ! on files opened as text mode. PHP uses binary mode as the default for file ! operations, but this can be overiden by fopen. Do not open files in text ! mode and use fseek on them! ! - Add strpos() function ! - Added zlib module, requires zlib >= 1.0.9 ! - Improved the module API implementation. Dynamic modules may now register ! persistent resources (not that it makes much sense, but at least PHP ! won't crash). The API itself remains unchanged. ! - bcmod() wasn't always behaving like modulus should behave (it was behaving ! exactly like GNU bc's % operator). Fixed. ! - Changed the Sybase-DB module to always return strings, instead of auto-typing ! result sets. This was done for consistency with the other database modules, ! and in order to avoid overflows due to the platform-dependant limitations ! of the numeric data types of PHP. You can turn compatability mode on using ! the sybase.compatability_mode directive in the php3.ini file. ! - Fixed problems with the TINYINT field in the Sybase-CT module. ! - Applied some small speed optimizations to the Sybase-DB module querying code. ! - Added 'numeric' and 'type' properties to the object returned by ! sybase_fetch_field(). ! - The 'new' operator doesn't accept all expressions anymore. Instead, it ! accepts a class name, or a variable reference (scalar, array element, etc). ! - Add ora_numcols() function ! - Add ora_do() and ora_fetch_into() functions to Oracle driver ! - Add persistent connection support to Oracle driver ! - Make Oracle driver clean up open connections and open cursors automatically ! - Added fread() and fwrite() that properly handle binary data. ! - Add Ora_ColumnSize() to Oracle code ! - The string "0" means FALSE again. This was done in order to maintain type ! conversion consistency. ! - Added solid_fetch_prev() for fetching the previous result row from Solid. ! - Huge integers are now automatically converted to floating point numbers ! (that have a wider range). ! - Floating point numbers are now displayed using scientific notation when ! they're extremely big or extremely small. The 'precision' php3.ini directive ! no longer designates the number of decimal digits, but rather, the maximum ! number of significant digits required. ! - Added support for scientific notation for floating point numbers (e.g. 1E7) ! throughout the entire language. ! - Fixed a potential/probable memory corruption problem with HEAD request ! handling. ! - Using un-encapsulated strings now generates a NOTICE-level warning ! (e.g. $a = foo; instead of $a = "foo";) ! - Added defined("name") function to check if a certain constant is defined ! or not. ! - Support new Apache mechanism for setting SERVER_SUBVERSION ! - Added PHP_OS and PHP_VERSION constants ! - Added the ability to define constants in runtime! Constants are script-wide, ! (there's no scope, once the constant is defined, it's valid everywhere). ! Syntax is define("name", $value [, $case_insensitive]). 'name' can be any name ! that is a valid variable name, *without* the $ prefix. 'value' can be ! any *scalar* value. If the optional 'case_insensitive' parameter is 1, ! then the constant is created case-insensitive (the default is case ! sensitive). Note: define() is currently *NOT* supported in preprocessed ! scripts. ! - Added general support for constants. The Syslog constants (e.g. ! LOG_ERR, LOG_CRIT, etc.) should be accessed as constants from now on (that ! is, without a $ prefix). You can still set define_syslog_variables to On ! in the php3.ini file if you want to define the various $ variables. The ! default for this directive in the php3.ini-dist file has been changed to ! Off. ! - The configuration file path variable now expands . and .. into their ! respective directories. You can obtain the path of the php3.ini file ! that was used by printing get_cfg_var("cfg_file_path"). ! - Fixed a crash-recovery parser crash ($a=7; $a[3]+=5;) ! - Add gmmktime() function ! - Fixed a crash with implode() and empty arrays. ! - Fixed a bug that, under fairly rare circumstances, caused PHP not to ! recognize if(), require() and other statements as statements, and ! to complain about them as being unsupported functions. ! - Beautified php3.ini-dist and added more comments to it. Also changed ! the behavior of the configuration file parser to be brighter about ! the various constants (TRUE/FALSE/ON/OFF etc). ! - Fixed a bug in openlog() - the specified device name was being mangled. ! - Memory leaks were sometimes reported erroneously - fixed. ! - Improved the convertor to handle some quirks of the PHP/FI 2 parser with ! comments. ! - Fixed number_format() to properly handle negative numbers, and optimized it ! a bit. ! - Fixed static variables inside class member functions. Note that using such ! static variables inside member functions usually defeats the purpose of ! objects, so it is not recommended. ! - Fixed a bug in fpassthru() (the file was being closed twice). ! - Added strftime(). ! - Add set_socket_blocking() function to control blocking on socket fd's ! - The sendmail_path in php3.ini was being ignored - fixed. ! - Fixed a bug with file upload, with files that contained the MIME boundary ! inside them. ! - Fixed a bug with form variables of type array, with spaces in their ! index (e.g. name="foo[bar bar]"). ! - gd-1.3 autodetect and support ! - Year 2000 compliance is now togglable from the php3.ini file. Setting PHP ! to be y2k compliant effects the way it creates cookies, and means it'll ! NOT work with many browsers out there that are not y2k compliant! For ! that reason, the default for this option is off. ! - safe mode / fix from monti@vesatec.com ! - Integrated the FreeType support in the GD extension. ! - Added --with-gd=DIR and --without-gd options to configure ! April 18 Version 3.0 Release Candidate 4 ! - Auto-prepended and auto-appended files were reporting the wrong filename ! in errors and in __FILE__ - fixed. ! - Fix GPC problem related to mixed scalar and array vars with the same name ! - Made putenv() Apache-safe. Environment variables may no longer leak in ! between requests. ! - The trailing semicolon is no longer required in class declarations. ! - Fixed a memory leak in the (array) and (object) operators under certain ! conditions. ! - <script> tags weren't working unless short tags were enabled - Fixed. ! - Fixed a bug in certain array indices that weren't treated as numbers ! even though they looked like numbers (e.g. "10", "20"). ! - Changes to support renamed API functions in Apache-1.3 ! - Fixed the -p and -e command line switches ! - Fix a segfault when calling command line version without parameters ! - Fix for feof() when used on a socket ! - Fix off-by-one error in fgets() when used on a socket ! - Fix bug in ImageSetPixel() (Thanks to ecain@Phosphor.net) ! ! March 31 Version 3.0 Release Candidate 3 ! - Tiny bugfix for magic_quotes_sybase ! - Fix Apache build problems introduced in RC2 ! - $a["0"]==$a[0] fix ! - Apache-1.3 build changes to support 100% automatic builds and shared library ! module builds. See INSTALL file. ! ! March 30 Version 3.0 Release Candidate 2 ! - Changed the socket implementation under UNIX to not use FILE pointers, in ! order to work around the buggy Solaris libc (and possibly buggy libc's ! in other platforms). ! - Fixed a bug in min() and max() with certain arrays. ! - *WARNING* Move Apache 1.3 php3 file install to src/modules/php3 instead of ! src/modules/extra. Make sure you change your AddModule line correctly ! in your Apache Configuration file. This change is to take advantage of ! new Apache-1.3 configuration mechanism which makes it easier to build an ! Apache server with PHP automatically enabled. It will also help building ! a shared library module version of PHP soon. ! - Fixed a crash bug with auto-appended files. ! - Made --enable-discard-path work on all Unix servers #!/path/php CGI scripts ! should now work everywhere. I have tested on Apache, WN and Netscape 2.0 ! - Made $a["123"] and $a[123] be identical. $a["0123"] is still different, ! though. ! - Added 'precision' ini directive, to set the number of decimal digits ! displayed for floating point numbers (default - 6). ! - Made integer/integer divisions evaluate to floating point numbers when ! applicable (e.g., 5/2==2.5(float), but 4/2==2(int)) ! - Get rid of reliance on tied streams and move all socket reads and writes ! to recv/send calls ! - Cleaned up head.c a bit and fixed CGI SetCookie order problem ! - Changed default variable parsing order to Get-Cookie-Post (GPC) ! - Fixed setup so it has all configure options and defaults. ! - Added optional decimal point and thousands seperator to number_format() ! e.g., number_format(1500,2,',','.') == 1.500,00 ! - Fixed cgi bug in windows that prevented files from being parsed on many ! systems and servers. ! ! March 23 Version 3.0 Release Candidate ! - Added support for the Raima database (ALPHA) ! - Fixed a bug in persistent PostgreSQL links and the connection-string method. ! - Added EXTENSION_STATUS file, that specifies the stability and status of ! every module in the distribution. ! - Added optional parameters to user functions with default values, variables ! that are forced to be passed by reference and variables that can be ! optionally passed by reference. The ini file directive ! 'ignore_missing_userfunc_args' is no longer supported. ! - Added fhttpd support (by Alex Belits) ! - Improved performance by approximately 20-30%. ! - Added mysql_error(), mysql_errno() (if available) and msql_error(). ! Errors coming back from the database backend no longer issue warnings. ! Instead, use these functions to retreive the error. ! - Patched count(), each(), prev(), next(), reset() and end() to work around ! the implementation side effects of unset(). As far as the users are ! concerned, this should be transparent now (even though it's slower now, ! until it's thoroughly fixed in 3.1). ! - Added number_format(). number_format(2499,2)=='2,499.00'. ! - error_reporting() now sets the error reporting level to the supplied ! argument, without any interpretations. ! - Fixed a lookahead parser bug that occured under rare circumstances. ! - Change the comparison operators to compare numeric strings as numbers. If ! you want to compare them as strings, you can use the new C-like strcmp() ! - Fixed Ora_GetColumn() bug when fetching strings ! - Added Ora_ColumnName() and Ora_ColumnType() ! - Preliminary LONG and LONG RAW support in Oracle extension ! - Add \123 and \xAB style octal and hex escapes to "" and `` strings ! - Add "-c" command line flag for specifying path to php3.ini file ! - Improved list() so that elements can be skipped, for example: ! list($name,,,$realname) = explode(":",fgets($passwd_file)); ! - Fixed a tiny bug in the hash initialization which caused excessive use of ! memory. Report and fix by short@k332.feld.cvut.cz ! - Fixed strtolower() and strtoupper() to work with 8-bit chars ! - Fixed to compile and run on SunOS 4.1 ! - Fixed a crash in soundex() of an empty string ! - Fixed parse_str() - it wasn't always defining the right variables, ! and didn't work with arrays. ! - Made [m,My]SQL create/drop database functions return success status ! - Fixed some memory leak/crash problems in the Adabas module ! - Added each() in order to allow for easy and correct array traversing. ! - Make Apache module version respect LOCALE setting ! - Add support for Apache 1.3b6+ ap_config.h file ! - Fixed a nasty corruption bug in eval() and show_source() that resulted in ! script termination (e.g. eval("exit();"). ! - Fixed a syntax highlighting problem with keywords used as variable ! names. ! - Fixed a possible crash and/or file descriptor leak ! - Fixed line number being off by one in #! shell style execution ! - Made it possible to disable auto_prepend/append with "none" filename ! - Allow safe CGI calling through #!php style scripts ! ! March 2 Version 3.0b6 ! - Made [s]printf handle %ld ! - Changed CGI version to only open regular files as input script ! - Added ignore_missing_userfunc_args directive to suppress warnings messages ! about missing arguments to user-defined functions ! - Added Postgres function - pg_cmdtuples(), by Vladimir Litovka ! - Disabled command line options if used as CGI ! - Changed CGI version to use PATH_TRANSLATED as the script file name ! - Link with solid shared library instead of static one ! - Fixed a crash with functions that aren't being called correctly ! - Fixed file descriptor leak in auto-prepend/append ! - Imap module is usable. See README in dl/imap. ! ! February 24 Version 3.0b5 ! - Made the URL aware file functions be enabled by default ! - Fixed an unlikely crash bug in the parser, with uninitialized array elements ! which are refered to as objects. ! - Fixed several fields that were being incorrectly read in Sybase CT. ! - Fix Apache-1.3 related SIGHUP problem which was preventing php3.ini from ! getting re-read on a SIGHUP ! - *** WARNING *** Downwards incompatible change: The plus operator (+) is not ! longer overloaded as concatenation for strings. Instead, it converts its ! arguments to numbers and performs numeric addition. ! - Add Stig and Tin's bdf2gdfont script to extra/gd directory ! - Added join() as an alias to implode() ! - Made implode() accept arguments in the order used by explode() as well ! - Made $php_errormsg local in function calls ! - Fixed Apache configuration directive bugs ! - Added a number of .ini directives to Apache .conf directive list ! - Fixed a 'memory leak' with strtok() ! - echo/print now handle binary data correctly. ! - NEW now accepts any expression for the class name argument. ! - Add ImageDashedLine() GD function ! - Add arg_separator .ini directive so the '&' GET method separator can be ! changed to ';' for example. Corresponding php3_arg_separator Apache .conf ! directive works as well. ! - Walked around an implementation side effect of switch(). <? switch(expr) { ?> ! now works. ! - Added memory caching, resulting in a significant performance boost ! - Added support for for(): .. endfor; loops ! - Added a new predicate - empty($var). Returns true if $var is not set, ! or is FALSE. Returns false otherwise. ! - Added is_integer() (same as is_long()) and is_real() (same as is_double()). ! - Added sizeof() as an alias to the count() function ! - Added --enable-force-cgi-redirect, to prevent the CGI from working if ! someone directly accesses PHP not through Apache's CGI redirect ! (off by default). ! - Fixed marking of deleted dBase records. Noticed by Simon Gornall ! <simon@oyster.co.uk>. ! - Fixed fixed "%%" bug in [s]printf ! - Fixed a UMR (initialized memory read) in the Oracle code ! - Potential fix for mysql-related SIGPIPE problem which caused httpd to spin ! - Made PHP responsive to the Apache link status (stop executing if the link ! dies). ! - Fixed a crash bug with StrongHold and secure pages ! - Fixed StrongHold installation ! - Optimized the function call sequence a bit. ! - Fixed Sybase/CT date/datetime/money fields work to correctly. ! - Fixed Apache module startup problems - php3_module_startup should only be ! called once. ! - Fixed ord() with characters >127 ! - Fixed bug in file_exists() function ! - Fixed stripslashes() to remove the escaping quote (instead of backslash) ! in case magic_quotes_sybase is true. ! - Also make echo and print automatically remove trailing decimal zeros. ! - Added htmlentities(), currently handling only ISO-8859-1 entities ! - "0" is no longer considered false, the only string which is false is the ! empty string "". ! - Added 'true' and 'false' keywords ! - Added 'xor' (logical exclusive or) ! - Automatic conversion from double to string removes decimal trailing zeros. ! - Added arsort() and rsort() to sort in descending order. ! - Turned on "XLATOPT_NOCNV" by default for uODBC/Solid. ! - Added support for a port number in the mysql_(p)connect() functions ! - Fixed a file descriptor leak in the configuration parser. ! - Fixed a few buglets with syntax highlighting with certain language keywords ! - Added functions to control minimum severity level of Sybase messages to ! display. ! - Added highlight_string() - behaves like highlight_file(), only instead ! of highlighting a file, it syntax highlights the contents of its ! argument. ! - Renamed show_source() to highlight_file(). show_source() is still ! supported for downwards compatability. ! - Fixed a bug in class inheritence - member functions with upper case ! letters in their names couldn't be redefined. ! - Made chown(), chgrp() and chmod() return TRUE/FALSE instead of 0/-1. ! ! February 02 Version 3.0b4 ! - Fixed a segfault bug in one of the unified ODBC error messages. ! - Set default file modes to binary on win32 (solved a lot of bs) ! - Fixed file copy on win32 ! - MIME file uploads fixed on win32 ! - Added contributed icons by Colin Viebrock (undex extra/icons) ! - Fixed the debugger enough to call it "beta code". ! - Fixed some leaks in the Oracle module, tidied up the code a bit. ! - Added __FILE__ and __LINE__ which evaluate to the currently parsed file ! and currently parsed line respectively. ! - Added ImageColorAt(), ImageColorSet(), ImageColorsForIndex(), and ! ImageColorsTotal() to allow manipulating the palette of GIF images. ! - Rename '--enable-url-includes' option to '--enable-url-fopen-wrapper' to ! better describe what it does, and pay attention to the setting. ! - Added optional parameter to the file(), readfile() and fopen() functions ! to look for files located in the include path. ! - Fixed bug that allowed the file() and readfile() to open files in the ! include path inadvertantly. ! - Fixed a (documented) bug in printf()/sprintf() with hard limited strings ! and alignment (e.g. %-.20s). ! - Optimized several quoted string routines. ! - Added error_log ini directive to select where errors get logged when ! log_errors is turned on or the error_log() function is used. ! - Added the ability to direct errors to log files instead of or in addition ! to the script output. Use the new display_errors and log_errors ! php3.ini directives. ! - Made environment variables uneraseable by POST/GET/Cookie variables. ! - Fixed a bug in the elseif() construct. The expression was being evaluated ! even if a previous if/elseif already evaluated to true and got executed. ! - Fixed a bug in the exit code parameter of system() ! - Tighten up all exec() related functions in safe mode ! - Added error_log() function to log messages to the server error log, or ! stderr for the CGI version. ! - Added support for a general memory limit of scripts. ! - Fixed a segfault bug that occured under certain circumstances with shell ! escapes ($foo = ...) ! - Made keywords be valid property names of objects. ! - Fixed a segfault bug when creating new objects of an unknown class. ! - Fixed a problem with the maximum execution time limit, that may have ! prevented this feature from working on certain platforms. ! - PHP would now warn you with E_NOTICE about unknown escape characters, ! e.g. "\f". It would still be considered as a backslash followed by f, ! but the proper way of writing this is "\\f" or '\f'. ! - Added support for ${...} inside encapsulated strings. Supported: ${foo}, ! ${foo[bar]}, ${foo[0]}, ${$foo[$bar]}, ${$foo->bar} and ${$foo} ! - Fixed a bug in automatic persistent link reconnect of the Sybase/DB module. ! Thanks to Steve Willer for finding that 'stealth' bug! ! - Fixed a crash bug in the GET/POST/Cookie parser in case of regular ! and array variables with the same name. ! - Added round() function. ! - Can't use encapsed strings as variable names anymore, ie. $"blah blah". ! - Fixed bug in gethostby*() functions that resulted in a core dump. ! (Noticed by torben@coastnet.com.) ! - Fixed bug in dbase_get_record that prevented number and date fields ! from being properly decoded. (Thanks again to colins@infofind.com.) ! - Make dbase_get_record include a 'deleted' field that indicates whether ! that record had been marked for deletion. ! - Fixed bug in dbase library that stomped on the deleted flag of the first ! record in the file if it was set. (Thanks to colins@infofind.com.) ! - Fixed putenv() to not report a memory leak and possibly prevent a bug ! from that memory being freed. ! - Added setlocale() ! - Added pg_fieldisnull() (by Stephan Duehr) ! - Changed pg_exec() to always return a result identifier on succees ! - Solid linking fixes (tries to find the right library) ! - Fixed a but with date() and the 'w' element. ! - Tried to eliminate unimportant memory leak notifications. ! - Made min() and max() backwards compatible and able to handle doubles. ! - Add fgetc() function ! - Fixed bug in getmyuid(), getmyinode() and getlastmod(). Thanks to ! khim@sch57.msk.ru for pointing this out. ! - Fixed http:// URL includes with no path specified send request for /. ! - Added GetAllHeaders() (Apache-only) ! - Added workaround that made the Image text functions 8-bit clean ! - Made snmp internally compilable for win32 (not the unix one though), ! only adds 2k to binary size, so no reason not to have it there. ! - Fixed ldap loading on win32 ! - Fixed MySQL Info function on win32 platform ! - Fixed compilation of syntax highlighting mode ! ! January 17 Version 3.0b3 ! - Added mysql support under windows ;) happy happy joy joy ! - Fixed dbase.dll for win32 to actualy load now. ! - Enhanced the convertor to recognize ?> as a php-close-block as well. ! - Fixed potential SetCookie() core dumps ! - Changed print to be an expression instead of a statement. That means you can ! now do stuff like foobar() or print("Unable to foobar!"). echo has NOT been ! changed. ! - Removed the flex optimization flags to reduce the size of the scanner ! - Added memory leak logging into apache log files (apache module only) ! - Fixed a nasty bug in one of the internal stacks. This may have caused ! random crashes in several occassions. ! - Fixed bug in ImageGif() making it hang sometimes ! - Added ImageLoadFont(), ImageFontWidth() and ImageFontHeight() ! - error_reporting() now returns the old error reporting level ! - Fixed url includes/opens not working under win32 ! - Fixed errorneous handling of multipart/form-data input ! - Added rawurlencode(), rawurldecode() and changed urlencode() and urldecode() ! a bit too. ! - Fixed a bug in [s]printf, sign was forgotten for doubles. ! - Fixed a segfault bug in pg_fieldprtlen(), and made it accept field names ! in addition to field offsets. ! - Made the setup script a little more user-friendly. ! - Added is_long(), is_double(), is_string(), is_array() and is_object() ! - Fixed a bug in freeing of mSQL results. ! - Improved pg_exec() to properly return true or false with queries that don't ! return rows (i.e. insert, update, create, etc) ! - Added get_cfg_var() to enable checking cfg file directives from within ! a script. ! - Fixed a bug with urlencode() and characters 0x80-0xff ! - Changed the behaviour of ereg_replace to more intuitive. The ! backslashes other than valid existing back references in the second ! argument are no more evaluated as escape sequences. ! - Fixed a bug in the configuration file loader and safe mode. ! - Fixed a bug with configuration variables taken from the environment. ! - Added <script language=php> </script> as PHP open/close tags, to allow ! the use of editors such as Microsoft Frontpage. ! - Fixed a bug in the default php3.ini directory - it wasn't defaulting to ! /usr/local/lib properly. ! - Added support for \r\n line endings ! - Fixed a bug that may have prevented POST method variables from working ! with certain scripts when using the CGI version. ! - Convertor: Added support for single-quoted strings ! - Fixed segfault bug in the Adabas module, with queries that don't return ! rows (update, insert, etc). ! ! December 22 Version 3.0b2 ! - Changed variable type conversions that do not specify base to always use ! base 10. "010" is no more 8, it is 10. Use intval ($x, 0) to get C-style ! octal and hex numbers recognized. ! - Fixed a possible segfault bug in several functions, when using the concat ! operator and possibly other operators/functions. ! - # is no longer accepted as a comment in php3.ini. Use ; instead. ! - Added browscap support ! - Configuration file directives are now case-sensitive ! - Fixed msql_tablename() and msql_dbname() ! - Added a PHP/FI 2.0 -> PHP 3.0 convertor ! - Added support for shell/perl-style single quotes ! - Added support for execution of external programs using backquotes ($a=ls -l) ! - fixed mail() on windows, also fixed memory leaks in mail on windows ! - added sendmail_from to handle return route on windows ! - Changed the way the config file is searched. The file name is now ! php3.ini (hardcoded), and it'll be looked for in: local directory, $PHPRC ! and builtin path designated by ./configure under UNIX or Windows directory ! under Windows. ! - Fixed ereg_replace replacing empty matches and a one off buffer overflow ! - Fixed File upload on windows platform ! - Fixed a bug that caused 'HTTP/1.1 100 Continue' messages with ! Internet Explorer 4.0 and certain scripts that receive POST variables ! - Get/POST/Cookie data variables are from now *ALWAYS* strings. If you want ! to use them in integer/real context, you must explicitly change their types. ! This was done in order to avoid possible loss of data when doing these ! conversions automatically. ! - Variables named as keywords are now allowed (e.g. $function, $class, etc) ! - Fixed a problem with msql() and mysql() with NULL fields ! - Fixed a segfault bug with class declarations ! - Fixed bugs with FOR loops and include() from within eval() ! - Changed include() to be executed conditionally. PHP-3.0 efficient ! unconditional include is now require() ! ! December 08 Version 3.0b1 ! - Switched to public beta test phase ! - Generalized unset() and isset() to work on any type of variables, including ! specific array indices or object properties (e.g., unset($a[4]) now works). ! - Added support for object references inside encapsulated strings ! (for example, 'echo "Username: $user->name"' now works) ! - Added arbitary precision math support (basic operations with ! unlimited range numbers, and support for unlimited decimal digits) ! - Apache module can now handle preprocessed scripts (by using: ! AddType application/x-httpd-php3-preprocessed .php3p ! in the Apache configuration) ! - Made settype() pass its first parameter by value. Improved it to be able ! to convert to arrays and objects (originally by Steve Willer) ! - Implemented CPU time limit on scripts when setitimer() is available ! - Computed field names in the Sybase/CT and Sybase/DB modules are now named ! computed, computed1, computed2, ... ! - Added Sybase/CT client/server message handlers and updated the Sybase/DB ones ! - Made the regexp function automatically take arguments by reference ! when necessary ! - Added builtin support for auto append and prepend in the parser level ! - Improved the Sybase/CT sybase_query(). Should be more stable now, and ! hopefully work with a wider range of queries. It's difficult to work ! without docs, though, so it may still not be 100% right... ! - Changed error messages to show error type, file and line with bold ! - Added support for autoprepend and autoprepend ! - Added some more warning flags if gcc is used ! ! December 03 Version 3.0a4 ! - Improved the internal functions API - no need to explicitly pass ! parameters by reference to internal functions that specifically ! require them, e.g. sort(), ksort(), reset(), count(), etc. ! This is *STILL* downwards compatible with the previous alphas, ! in the sense that you can explicitly pass the arguments by reference ! if you want to. ! - use srandom/random instead of srand/rand if available ! - Added [m,My]sql_listfields() for downwards compatability ! - -p now replaces .php3 extension with .php3p (otherwise it adds .php3p) ! - Added C++ style comments (// comment) ! - Fixed # commenting to terminate at a close PHP tag ! - Added \0 back reference for full string match to *reg*_replace and ! added backslash escaping to replace string ! - Fixed a few bugs in the Sybase DB-library module. ! - Added Sybase CT-library support. It should be considered experimental. ! Syntax is identical to the one of the DB-library. Allows people to ! connect to MS-SQL servers from Linux without having to pay for a ! library! ! - Beautified phpinfo() ! - Add ImageColorClosest() and ImageColorExact() GD functions ! - Make all .ini directives work as Apache .conf directives as well ! - Added PHP2-like File() function with PHP3 URL support ! - Upgraded the Sybase interface. It's practically MySQL compatible now! ! Among other things, added sybase_fetch_array() and sybase_fetch_object(). ! - Fixed problem in multi dimensional array handling and self modifying ! operators (+=, -=, etc). ! - Safe Mode file open implementation ! - SVR3 portability problem fix ! ! November 23 Version 3.0a3 ! - Made the global statement behave like PHP 2 with undefined variables ! - Added msql_fetch_object() and msql_fetch_array() ! - Switched between the 1st and 2nd parameters to explode(), so that it acts ! like split() ! - Fixed passthru(), exec() and system() functions ! - Implemented second optional parameter to intval() to specify conversion base ! (The default is to assume you want to do a base 10 conversion.) ! - Implemented SQL safe mode for MySQL ! - Read UploadTmpDir from php3.ini instead of apache conf files ! - Added mysql_fetch_object() and mysql_fetch_array() ! - Changed function->old_function. function is now an alias to cfunction. ! - Split the magic_quotes directive to get/post/data and other ! - Added generic copy() function ! - Added a $GLOBALS[] array, which contains all global variables ! - Fix broken getimagesize() function ! - Made mysql_fetch_field() and msql_fetch_field() optionally accept a 2nd argument ! - Fixed mysql_data_seek() and msql_data_seek() ! - Changed list assignment to list(...) and array init to array(...) ! - Made <?php_track_vars?> work ! - cgi when not in debug mode uses regular malloc(), free() functions now ! - Added preliminary support for perl-style list assignments ! - Fixed a bug in mysql_result() and msql_result() when specifying table ! - renamed internal error-handling function and levels ! - Added basename and dirname functions similar to sh counterparts ! - Added base64_encode() and base64_decode() ! - Support Basic authorization for http url includes ! - Added parse_url() function to extract url components ! - Made it possible to use anonymous ftp on URL includes ! - Fixed url includes to handle different URLs better ! - Fixed mysql_field*() functions ! - Made mysql_connect() smarter, after a mysql_close() (applies to msql and pgsql too) ! ! November 6 Version 3.0a2 ! - Fixed a segfault bug caused by non-persistent connect in [m,My,Postgres]SQL modules ! - Fix command line argument handling ! - Made empty array list assignments work ($a=({});) ! - Made '$' escaping optional when a variable name parsing isn't possible ! - Added support for mysql_[p]connect(host) and mysql_[p]connect(host,user) ! - New layout in phpinfo() ! - Update Oracle extension to use php3_list functions ! - Add includepath support ! - Add #!php shell script escape support ! - Change name of CGI/command line version from php3.cgi to php ! - Add SNMP extension ! - show_source() support ! - Parsing of command-line args for CGI version ! - Support for backreferences in ereg_replace ! - Support for hexadecimal numbers directly at the scanner level ! - Support octal numbers directly at the scanner level ! - Fixed problem with huge html files (with little or no php code) ! - Fix eval() empty string argument core dump ! - renamed 'install' to 'setup' to be more accurate and avoid name conflict ! - Fixed Oracle compilation ! - Fixed mSQL 1.0 compilation ! - Fixed a problem in the mSQL, MySQL and PostgresSQL drivers and NULL fields. ! - Fixed the GLOBAL statement to be able to declare an array. ! ! October 29 Version 3.0a1 ! - Start with excellent new parser from Andi and Zeev --- 1,5 ---- ! PHP 3.1 CHANGE LOG ChangeLog ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| ! September ??, 1998 Version 3.1a2 ! - Added memory_status() -- PHP Development Mailing List http://www.php.net/ To unsubscribe send an empty message to php-dev-unsubscribe@lists.php.net For help: php-dev-help@lists.php.net

« previous php.dev (#375) next »