ID: 10172
Updated by: [EMAIL PROTECTED]
Reported By: [EMAIL PROTECTED]
-Status: Open
+Status: Closed
Bug Type: Documentation problem
Operating System: RH 7.0
PHP Version: 4.0 Latest CVS (04/04/2001)
New Comment:
Has already been documented.
Previous Comments:
------------------------------------------------------------------------
[2001-11-22 17:05:46] [EMAIL PROTECTED]
OK, but this docfix was right, as this is the current
case, and it should be documented. If this patch goes
throuh, and it arrives in some version, we can add
a note, that this strange behaviour existed till eg.
4.1.0 and it is corrected after that release...
------------------------------------------------------------------------
[2001-11-22 16:52:31] [EMAIL PROTECTED]
I *really* don't think this should be a documentation fix, I think the
get_class() function needs to be changed to always return lowercase.
Here is the required patch:
cmv@vincent:/usr/local/sources/php4/Zend$ diff -u
zend_builtin_functions.c NEW.zend_builtin_functions.c
--- zend_builtin_functions.c Thu Nov 22 16:49:26 2001
+++ NEW.zend_builtin_functions.c Thu Nov 22 16:51:30 2001
@@ -458,7 +458,8 @@
{
zval **arg;
zend_class_entry *ce;
-
+ char *lcname;
+
if (ZEND_NUM_ARGS()!=1 || zend_get_parameters_ex(1,
&arg)==FAILURE) {
ZEND_WRONG_PARAM_COUNT();
}
@@ -467,7 +468,10 @@
}
ce = Z_OBJCE_PP(arg);
- RETURN_STRINGL(ce->name, ce->name_length, 1);
+ lcname = estrndup(ce->name, ce->name_length);
+ zend_str_tolower(lcname, ce->name_length);
+
+ RETURN_STRINGL(lcname, ce->name_length, 1);
}
/* }}} */
- Colin
------------------------------------------------------------------------
[2001-11-22 16:04:07] [EMAIL PROTECTED]
Seems strange. Docs have been updated to reflect current
behavior. Changing status to 'feedback'.
------------------------------------------------------------------------
[2001-11-22 11:08:41] [EMAIL PROTECTED]
Well, I suppose it is a documentation problem of sorts ... but my
preference would be for the get_class() function to be consistent,
regardless of whether the class is user-defined or extention-defined.
Any reason why this shouldn't be consistent?
- Colin
------------------------------------------------------------------------
[2001-11-21 19:35:55] [EMAIL PROTECTED]
get_class() only returns user defined classes in lowercase.
Classes defined in extensions are returned in their original notation.
Making this a documentation problem.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
http://bugs.php.net/10172
--
Edit this bug report at http://bugs.php.net/?id=10172&edit=1