Commit graph

87 commits

Author SHA1 Message Date
Andrei Zmievski
e875205714 Implement user conversion error handler support. Works as normal error
handler, in that it can return false to make the default one take over.
Handler signature is:
  user_handler($direction, $encoding, $char_byte, $offset, $message)

Also removed support for using exceptions in default error handler.
2006-06-21 20:17:21 +00:00
Andrei Zmievski
930bde5897 * Remove unicode.from_error_mode and unicode.from_subst_char from INI
settings.
* Add unicode_set_error_mode() and unicode_set_subst_char() functions to
  manipulate these global settings.
2006-03-26 01:48:33 +00:00
Andrei Zmievski
1c09ef8e37 Update conversion error behavior and add some new modes.
# The various escape modes are what ICU calls them. We may want to come
# up with different names for UNICODE/ICU/JAVA ones..
2006-03-23 22:00:42 +00:00
Dmitry Stogov
d51599dfcd Eliminated run-time constant fetching for TRUE, FALSE and NULL 2006-03-15 09:04:48 +00:00
Dmitry Stogov
72acb65b24 zend_hash_apply() doesn't use ZEND_HASH_APPLY_... macros 2006-03-14 11:24:30 +00:00
Dmitry Stogov
78aed20223 Optimized cleanup loops on request shutdown 2006-03-13 11:13:55 +00:00
Dmitry Stogov
e3b7f3fd0d Unicode support: MS Visual C compatibility 2006-02-26 11:57:14 +00:00
Dmitry Stogov
1f4d9fa4a7 Unicode support: fixed internal constants usage and get_defined_constants() 2006-02-22 10:02:15 +00:00
Dmitry Stogov
0f1209ab3d Portable unicode string API:
- use the same type (int) for zval.value.usr.len and zval.value.str.len
  - use union "zstr" as char*/UChar* mixture instead of void*
  - Z_UNISTR() and Z_UNILEN() no longer check for Z_TYPE()
  - nuke int32_t from ZE (not finisned)
2006-02-21 20:12:43 +00:00
Dmitry Stogov
2e5d0a3a9d WS 2006-02-21 08:00:39 +00:00
Dmitry Stogov
b424a32610 Preparation for portable string API (use macroses to access zval). 2006-02-20 19:03:43 +00:00
Andi Gutmans
5de7cc3194 - Update copyright notices to 2006 2006-01-04 23:54:12 +00:00
Derick Rethans
0f391bb0b3 - Add E_RECOVERABLE.
#- Thought I did this before already actually...
2005-09-15 16:19:48 +00:00
Dmitry Stogov
49c3b14f53 Unicode support for PHP constants 2005-09-08 11:10:34 +00:00
Dmitry Stogov
e47587e189 Fixed several unicode related bugs 2005-08-15 14:39:18 +00:00
Andrei Zmievski
b80cb7bd2f Unicode support 2005-08-11 23:35:03 +00:00
foobar
916815b779 Bump up the year 2005-08-03 13:30:58 +00:00
foobar
2c65e09a4b - Revert the weird change of ZEND_STRS() macro and use the correct
ZEND_STRL() macro.
# ZEND_STRS was changed to be same as ZEND_STRL..someone on crack? :)
2005-01-20 02:02:09 +00:00
Marcus Boerger
1ea22c9004 Bugfix #29116 Zend constant warning uses memory after free (jdolecek at NetBSD dot org) 2004-07-13 19:22:11 +00:00
Ilia Alshanetsky
2ba0608e48 Do not use alloca() where it can be easily abused by the users.
# This probably should go into reflection code as well.
2004-07-01 16:28:32 +00:00
Andrei Zmievski
81efd46186 Avoid unnecessary and silly copying of constant name when registering. 2004-05-26 21:01:37 +00:00
Andi Gutmans
f30b51f5b9 - Fix crash:
<?php
class ResourceFormat
{
     const IMG           = 1;
}

class Image
{
     const RESOURCE_FORMAT   = ResourceFormat::IMG;
}

print_r(constant('Image::RESOURCE_FORMAT'));
?>
2004-03-09 15:37:18 +00:00
foobar
ccfc46b0aa - Happy new year and PHP 5 for rest of the files too..
# Should the LICENSE and Zend/LICENSE dates be updated too?
2004-01-08 17:33:29 +00:00
Ilia Alshanetsky
7f9d1a1f6b Do not copy extra byte. 2003-12-12 00:16:58 +00:00
Andi Gutmans
d0d7badfb9 - Fix overallocation (thanks to Ilia) 2003-12-09 08:56:04 +00:00
Andi Gutmans
bc4d0082d6 - Fix newly introduced bug which stopped class constants from working.
- Thanks to Jan Lehnardt for reporting it.
2003-11-24 20:47:53 +00:00
Andi Gutmans
d344648b07 - Fix __autoload() to preserve class case.
- Heads up, this patch might break stuff so please let me know if you
- bump into any problems.
2003-11-24 18:13:29 +00:00
Andi Gutmans
c0df450203 - Add E_STRICT, to be used to warn purists (like Jani :) 2003-11-18 09:25:04 +00:00
Stanislav Malyshev
5724c7a66c fix leaks with class constants (bug #24699) 2003-07-27 12:03:54 +00:00
Andi Gutmans
288dacca0c - ZE coding style requires if ( instead of if( 2003-06-30 20:22:35 +00:00
Stanislav Malyshev
f57ac82bb0 support for self:: and parent:: constants 2003-06-16 10:16:50 +00:00
Sebastian Bergmann
2c7ebe557f Fix ZTS build. 2003-06-15 15:34:00 +00:00
Stanislav Malyshev
4a8c31d6c9 set ending \0 for string 2003-06-15 14:40:38 +00:00
Stanislav Malyshev
8cd9792375 Fix bug #23384 - static class::constant constants should now
work in static & array expressions.
2003-06-15 13:58:50 +00:00
James Cox
f68c7ff249 updating license information in the headers. 2003-06-10 20:04:29 +00:00
Stanislav Malyshev
f7f5a5ea6b MEGA-patch: namespaces are R.I.P. 2003-06-02 12:13:11 +00:00
Marcus Boerger
53dae40d5a Do it correct always 2003-06-01 16:20:23 +00:00
Marcus Boerger
5457e34273 Fix constants (noticed by David Brown <dave@codewhore.org>) 2003-05-31 17:24:20 +00:00
Marcus Boerger
05a217707f c->name_len already contains the '\0' 2003-05-31 15:57:59 +00:00
Marcus Boerger
66b9125968 Make use optimized string lowering 2003-05-21 22:57:51 +00:00
Stanislav Malyshev
a4c3b2ce80 Namespace patch. Big changes:
1. Nested classes are gone.
2. New syntax for namespaces:
namespace foo {
	class X { ... }
	function bar { ... }
	var x = 1;
	const ZZ = 2;
}
3. Namespaced symbol access: $x = new foo::X; - etc.
For now, namespaces are case insensitive, just like classes.
Also, there can be no global class and namespace with the same name
(to avoid ambiguities in :: resolution).
2003-02-16 11:12:43 +00:00
foobar
333406bdc2 - Added some missing CVS $Id$ tags, headers and footers. 2003-02-01 01:49:15 +00:00
Sebastian Bergmann
2c5d4b8c23 Bump year. 2002-12-31 15:59:15 +00:00
Ilia Alshanetsky
d3617c51b8 MFZE1 zend_str_tolower issue. 2002-10-09 14:21:40 +00:00
Ilia Alshanetsky
ee7b8f906d MFZE1 2002-09-26 18:56:11 +00:00
Zeev Suraski
f2aa45d234 Remove dead code 2002-09-18 22:15:02 +00:00
Andi Gutmans
b53569c9e8 - Nuke persist_alloc(). 2002-06-22 13:52:07 +00:00
Andi Gutmans
70de1bd5bb - Fix problem where you couldn't define constants with different cases but
- the same name.
2002-06-19 04:13:12 +00:00
Sebastian Bergmann
62dc854bb0 Happy New Year. 2002-01-06 15:21:36 +00:00
Andi Gutmans
ce98c73f82 - Infrastructure changes for allowing to access the global scope from
- within a class scope.
- Fix the Zend.dsp project a bit. It seems someone pretty much killed it
- when commiting their own personal configuration. Please be careful in
- future.
2001-12-12 20:45:38 +00:00