Sterling Hughes
dae3fefd10
revert back the optimization for now.
2003-06-30 01:41:15 +00:00
Sterling Hughes
f605f0b708
Very simple, but very effective optimization. Provides a signifigant speed
...
improvement to matches done via '=='. This checks that the lengths of two
strings are equal before performing a memcmp() on them.
2003-06-29 01:49:10 +00:00
James Cox
f68c7ff249
updating license information in the headers.
2003-06-10 20:04:29 +00:00
Marcus Boerger
472cc5b9f3
Faster interface inheritance & faster inheritance checks
2003-05-29 19:00:40 +00:00
Sterling Hughes
ae2bfb7880
Assume lazy consensus regarding the cast_object() patch. *Only* implemented
...
from a internals perspective. This callback has been very useful for both
ext/mono and ext/simplexml
2003-05-27 18:52:25 +00:00
Sterling Hughes
ae9106521a
move HANDLE_NUMERIC() from the hash table implementation upstream to the
...
places that actually need to use it.
2003-05-23 15:11:15 +00:00
Marcus Boerger
402f5f7a0d
Use same parameter order as strcpy()
2003-05-21 22:36:09 +00:00
Marcus Boerger
7af8eadd57
Make zend_str_tolower_copy() a copy function (like stccpy).
...
Supply a dup version (like estrdup).
Fix tolower() handling.
# Havin copy and dup allows to use the faster version even with
# memory not allocated by emalloc.
2003-05-21 21:59:40 +00:00
Sterling Hughes
5619166fe4
optimize loops. The check only exists for integers because that's the more
...
common optimization, and you actually lose performance if you check for
a double too (wierd but true).
2003-05-21 18:46:34 +00:00
Sterling Hughes
34087ad2b5
bah humbug, use the pointer based version, which turns out to be an instruction
...
faster
2003-05-20 22:31:15 +00:00
Sterling Hughes
7c7d14a413
use pointer arithmetic for the normal zend_str_tolower()
2003-05-20 20:39:58 +00:00
Sterling Hughes
3079bb1bda
make this faster and sexier
2003-05-20 19:09:33 +00:00
Sterling Hughes
a4fb3300b3
doesn't need to be register
2003-05-20 18:42:09 +00:00
Sterling Hughes
ca6ca5e2a6
optimize the lookups by avoiding a copy and then another pass
...
Naked Dancing Girls should be given to: Myself, Zeev, Marcus,
and George Schlossnagle (in no particular order)
2003-05-20 18:28:14 +00:00
Zeev Suraski
26dd8492ed
Add support for interfaces
2003-03-05 11:14:44 +00:00
foobar
333406bdc2
- Added some missing CVS $Id$ tags, headers and footers.
2003-02-01 01:49:15 +00:00
Ilia Alshanetsky
7a3c54fc36
Fixed compiler warning regarding signed/unsigned int comparisons.
2003-01-30 23:36:08 +00:00
Andi Gutmans
c073b76aac
- Change "is" to "instanceof" as it explains better what the operator means.
...
- "is_a" was also appropriate but ugly.
2003-01-14 21:29:23 +00:00
Sebastian Bergmann
2c5d4b8c23
Bump year.
2002-12-31 15:59:15 +00:00
Andi Gutmans
671fff2fde
h WHitespace
2002-11-30 11:20:25 +00:00
Ilia Alshanetsky
a8f8d9d586
Silence compile warning, ctype.h is needed for tolower() function.
2002-11-04 17:05:11 +00:00
Ilia Alshanetsky
e842ef9f4b
MFZE1 (floats & locale issue)
2002-10-12 21:15:35 +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
Andi Gutmans
43139dc755
- WS - Always use "if (" and not "if("
2002-09-15 07:45:26 +00:00
Stanislav Malyshev
73cf316a53
MFZE1
2002-09-01 08:30:39 +00:00
Zeev Suraski
91f585744f
MFZE1
2002-08-19 20:58:22 +00:00
Andi Gutmans
52406cb37c
- Make new 'is' operator work with classes only and return false when
...
- the object isn't of the said class or the value isn't an object.
2002-08-08 16:32:34 +00:00
Harald Radi
99c90db11a
make win32 debug output more verbose
2002-08-07 14:47:42 +00:00
Andrei Zmievski
82c72f2799
@- Adding 'is' operator that can be used to check the type of a variable,
...
@ or its class. (Andrei)
2002-07-30 04:07:15 +00:00
Derick Rethans
c652c4b512
- MFH of the crap removal
2002-07-15 18:11:04 +00:00
Andi Gutmans
f7d9b9f1ae
- Really implement bool increment/decrement as flip-flop.
2002-07-15 04:11:13 +00:00
Derick Rethans
207845410b
MFZE1
2002-07-14 11:48:45 +00:00
Derick Rethans
dcd67e0b14
- MFZE1
2002-07-14 09:37:42 +00:00
Derick Rethans
643f21e840
- MFZE1
2002-07-14 09:29:42 +00:00
Andi Gutmans
6339bd5912
- Fix bug 15037
...
- Bump version to alpha2-dev
2002-06-29 07:35:41 +00:00
Andi Gutmans
1f6cadcd28
- WS fix
2002-06-28 15:30:03 +00:00
Harald Radi
51e797f1e3
some type cleanup work
2002-04-23 18:06:54 +00:00
Andi Gutmans
fb6976e46d
- Another couple of indirection fixes.
...
- Make class_entry->refcount be part of the structure and not allocated.
2002-03-12 19:22:29 +00:00
Stanislav Malyshev
6608f07322
Mega-commit: Enter the new object model
...
Note: only standard Zend objects are working now. This is definitely going to
break custom objects like COM, Java, etc. - this will be fixed later.
Also, this may break other things that access objects' internals directly.
2002-02-07 14:08:43 +00:00
Sebastian Bergmann
62dc854bb0
Happy New Year.
2002-01-06 15:21:36 +00:00
Sebastian Bergmann
d863d52a5d
Update headers.
2001-12-11 15:16:21 +00:00
Stanislav Malyshev
d082fb373d
MFZE1
2001-09-05 09:29:28 +00:00
Andi Gutmans
b0970f1421
- MFZE1
2001-08-26 15:16:06 +00:00
Andi Gutmans
ea48c0c46a
- Fix a bug in method calls.
...
- Try to get the old copying behavior of objects to work (doesn't work yet).
2001-08-16 14:04:04 +00:00
Zeev Suraski
8722b31d8a
MFZE1
2001-08-13 00:28:18 +00:00
Andi Gutmans
76a7a5bc18
- More work on making objects work
2001-08-11 18:26:47 +00:00
Andi Gutmans
532677e7ac
- Fix some places which create objects. The fixes are ugly and will be
...
revised when things start working well
2001-08-11 18:04:07 +00:00
Zeev Suraski
adf89828d2
Whitespace
2001-08-11 15:44:24 +00:00
Zeev Suraski
8ce8324e59
More TSRMLS_FETCH annihilation
2001-07-30 04:54:16 +00:00
Andi Gutmans
cf510cb7fd
- Fix build
2001-07-28 20:28:29 +00:00
Andi Gutmans
ff61394786
- More object macros.
2001-07-28 20:27:32 +00:00
Zeev Suraski
2c254ba762
Get rid of ELS_*(), and use TSRMLS_*() instead.
...
This patch is *bound* to break some files, as I must have had typos somewhere.
If you use any uncommon extension, please try to build it...
2001-07-27 10:10:39 +00:00
Stanislav Malyshev
db97aea8d9
fix double->long conversion
2001-07-18 16:46:51 +00:00
Zeev Suraski
4cc86259dd
Get rid of ZVAL_RESET...
2001-07-11 11:35:11 +00:00
Zeev Suraski
ed542331b7
Get rid of some inlines
2001-07-11 09:33:41 +00:00
Andi Gutmans
af089a2938
- Remove bogus comment.
2001-06-29 20:42:02 +00:00
Zeev Suraski
5e99993058
Fixed autoconversion of negative values to double (Fix bug #11685 )
2001-06-26 21:11:35 +00:00
Zeev Suraski
429667883e
Treat numeric strings as numbers in the increment operator
2001-05-10 12:58:31 +00:00
Andi Gutmans
27fd3a2e57
- Previous patch for too early freeing of resources seemed to have worked.
...
- Clean it up a bit.
2001-04-29 09:21:38 +00:00
Andi Gutmans
b11202d66b
- Try and solve the too early resource destruction problem.
2001-04-29 06:33:50 +00:00
Zeev Suraski
4e71bbed0a
include limits.h if available
2001-04-28 20:21:42 +00:00
Andi Gutmans
26c06df321
- Move all cases into switch().
2001-04-28 18:20:46 +00:00
Zeev Suraski
882751dd7d
Resources weren't being properly destroyed by the convert_to_*() functions
2001-04-28 02:06:35 +00:00
Andi Gutmans
acd56b0891
- More whitespace fixes while I'm at it.
2001-04-27 18:53:25 +00:00
Andi Gutmans
d2c9e8074c
- Update copyright year
2001-02-26 05:43:27 +00:00
Andi Gutmans
4afacc0a7c
- Remove two unused functions
2001-02-12 15:49:24 +00:00
Stanislav Malyshev
138ea941fa
Add notice when auto-converting array to string
2000-12-18 08:47:17 +00:00
Stanislav Malyshev
98f2db94ec
Fix #8279 (-2147483647 > 2147483647).
...
# Long addition/subtraction may not fit long.
2000-12-17 16:02:59 +00:00
Stanislav Malyshev
868c8769f8
Fix #8195 : strncasecmp returns incorrect value
2000-12-12 09:47:30 +00:00
Zeev Suraski
f8dabac6d5
Fix build
2000-11-21 22:41:49 +00:00
Zeev Suraski
1fd09132c2
Initial steps to move the INI mechanism to the Zend engine
2000-10-29 11:38:26 +00:00
Andi Gutmans
bc37c9b1cd
- Make increment of "" become "1"
2000-10-13 16:24:00 +00:00
Andi Gutmans
715774bed7
- Commiting Sterling's new multi_convert* functions
2000-09-05 17:55:57 +00:00
Stanislav Malyshev
1373a16280
Add strncasecmp function
...
@ Added strncasecmp function (Andi)
2000-07-26 11:32:15 +00:00
Sascha Schumann
7565347ba0
Move some stuff to zend_operators.h which is required by the
...
moved inline functions.
2000-06-14 19:55:32 +00:00
Sascha Schumann
df74f1dfab
Add optional support for C0x inline semantics.
...
These are enabled by specifying `--enable-c0x-inline' on the command
line. We might add an autoconf check for this particular feature
later.
2000-06-13 17:58:33 +00:00
Andi Gutmans
390dccacac
- Fixed problem when using uninitialized values in comparisons with strings.
...
- They behave as empty strings again just like in PHP 3.
2000-06-10 14:39:06 +00:00
Sascha Schumann
039551788b
Add a couple of casts
2000-06-08 06:07:38 +00:00
Zeev Suraski
bfac4633a5
- Support unordered hash comparisons
...
- Make == perform an unordered comparison with arrays/objects, and === perform an ordered comparison
2000-06-04 21:59:49 +00:00
Zeev Suraski
dae76aa1b5
Support comparisons of arrays (with arrays) and objects (with objects)
2000-06-03 10:34:19 +00:00
Zeev Suraski
d4b160c0d6
- Export normalize_bool
...
- This global/static syntax fix brought us back to the 4 documented conflicts
2000-06-03 03:05:01 +00:00
Andi Gutmans
015884dda5
- Use pointer arithmetic to speed up the function a bit
2000-05-28 18:59:40 +00:00
Andi Gutmans
b5447a4d7a
- Fixed scanning decimal numbers in internationalized environments. They should
...
- always be in standard US format e.g. 23.3
2000-05-26 07:49:56 +00:00
Andi Gutmans
715ff77344
- Fix include() when used on resources (shouldn't work but shouldn't crash
...
either).
2000-05-18 10:21:24 +00:00
Andrei Zmievski
3df1e68fe9
Update for sort functions - user can now specify sort type.
2000-05-18 01:53:41 +00:00
Andi Gutmans
0aefa3e037
- Add support for string_compare_function() and number_compare_function().
...
UNTESTED!
2000-05-17 18:55:22 +00:00
Zeev Suraski
760a17729e
Normalize results of compare_function()
2000-05-17 17:08:25 +00:00
Zeev Suraski
0d6a794d85
Get rid of chval - it's really not necessary and seems to be confusing people
2000-05-11 19:18:11 +00:00
Zeev Suraski
19de3be052
Make zend_binary_strcasecmp compile again
2000-05-08 10:24:26 +00:00
Sascha Schumann
36c1a9a39d
Make strcasecmp() act correctly WRT SUS II.
...
Patch by: hholzgra@php.net
PR: #3556
2000-05-08 10:05:19 +00:00
Zeev Suraski
ddc36fb776
Make convert_to_string() allocations traceable
2000-04-28 13:31:51 +00:00
Andrei Zmievski
bbe0df125e
Do proper ieeefp.h check.
2000-04-20 13:49:07 +00:00
Thies C. Arntzen
c1c8422dbf
compile before commit! compile before commit! compile before commit!
2000-04-20 07:24:56 +00:00
Thies C. Arntzen
2b3a575ab3
revert andrei's path (i can't compile anymore on linux)
...
we're always using #ifndef HAVE_BLA instead of if !HAVE_BLA and if we need ieeefp.h for some weird platform (which one is that?) we need an autoconf check for it.
2000-04-20 07:23:55 +00:00
Andrei Zmievski
fe1147b01a
Include proper files for finite.
2000-04-19 15:55:52 +00:00
Thies C. Arntzen
44e0d27685
ups, finite is already a macro on Win32
2000-04-17 13:25:16 +00:00
Thies C. Arntzen
8367275477
HPUX11 only has isfinite()
2000-04-17 10:39:13 +00:00
Zeev Suraski
c6c261e922
Fix a memory leak when using assign-op bitwise operators on strings
2000-04-13 15:56:02 +00:00
Zeev Suraski
e663d856b3
Fix object overloading support
2000-04-10 20:21:13 +00:00
Torben Wilson
521c8af6a4
Added !== (is not identical) operator.
2000-03-29 22:05:19 +00:00
Zeev Suraski
2e68fc59e3
- Wrong fix
2000-03-22 18:43:25 +00:00
Zeev Suraski
4d68c944d9
- Only free when result != op1
2000-03-22 18:36:02 +00:00
Andi Gutmans
88c98d3e3f
- Seems to be a problem here with the return value not being set
2000-03-10 21:22:48 +00:00
Zeev Suraski
5e55e47f7f
It's official now...
2000-03-06 05:26:39 +00:00
Thies C. Arntzen
4e5acab610
now
2000-03-01 13:59:51 +00:00
Zeev Suraski
80782eff1f
Fix comparisons of "inf"=="inf" and "-inf"=="-inf"
...
@- Comparing the string "inf" with "inf" returned false - fixed (Zeev)
2000-02-26 04:07:03 +00:00
Zeev Suraski
0ac9536d99
(c) patch
2000-02-19 22:46:42 +00:00
Zeev Suraski
f77e6a4499
Generalize macros
2000-02-19 13:11:39 +00:00
Zeev Suraski
0b1c8b455a
Make (array) false == array() and not array(false)
2000-02-13 00:52:33 +00:00
Zeev Suraski
ebddd16c75
Fix declaration
2000-02-08 22:18:21 +00:00
Andrei Zmievski
0f1c2504b1
Fix up the patch.
2000-02-08 17:59:28 +00:00
Andrei Zmievski
c2fd6752cf
Patches from Walter for strncmp() stuff.
2000-02-08 17:19:43 +00:00
Zeev Suraski
fafbf6d8da
- Implement declare() with declarables framework
...
- Implement ticks - Germany&Norway - 5 points!
2000-01-24 19:00:30 +00:00
Andi Gutmans
44e9e95933
- Rename IS_BC to FLAG_IS_BC. We will probably nuke it.
2000-01-04 14:25:42 +00:00
Andi Gutmans
bdefd5da15
- Change IS_UNSET -> IS_NULL
2000-01-04 13:22:58 +00:00
Joey Smith
c5589a9dd5
# There is no functions/ directory in PHP4.
...
@ number.h comes from ext/bcmath, not functions/
number.h comes from ext/bcmath, not functions/
2000-01-03 18:53:29 +00:00
Andi Gutmans
da8ad4f20f
- Fix compare_function() for IS_UNSET
2000-01-03 05:28:34 +00:00
Andi Gutmans
4a4fe0974f
- IS_NULL should be 0 when converted to a long although I don't think it
...
really should be documented.
2000-01-01 18:47:03 +00:00
Zeev Suraski
a6d4b30d19
Fix buglet
2000-01-01 15:31:59 +00:00
Zeev Suraski
f2d703e916
- Nuke undefined_variable_string
...
- Introduce IS_UNSET
1999-12-31 13:56:59 +00:00
Zeev Suraski
b7a5b3c309
- Generalize the fast cache mechanism
...
- Add the HashTable struct to the fast cache mechanism
1999-12-27 19:07:33 +00:00
Zeev Suraski
aec33aa753
Introduce a zval-specific cache - 5-15% speed improvement
1999-12-26 21:56:59 +00:00
Zeev Suraski
235386b245
Change ALLOC_ZVAL() semantics
1999-12-26 21:21:33 +00:00
Andi Gutmans
62b2087a84
- Create two new macro's. ALLOC_ZVAL() and FREE_ZVAL(z) and make Zend use
...
them.
1999-12-24 15:22:11 +00:00
Andrei Zmievski
80bab9d939
We're using ZVAL's now.
1999-12-21 17:14:31 +00:00
Thies C. Arntzen
816627b16c
fixed is_identicat_function()
1999-10-19 15:48:25 +00:00
Andi Gutmans
70b41809f2
- Fix is_identical function
1999-10-19 14:11:39 +00:00
Andi Gutmans
7a205f6087
- Preliminary submit of Thie's patch. Will fix the rest on Windows
...
as this was added on UNIX with patch. Changed IS_SAME -> IS_IDENTICAL
1999-10-19 13:33:17 +00:00
Andrei Zmievski
c279668168
unstatic'fy is_numeric_string()
1999-10-15 20:42:26 +00:00
Andi Gutmans
202d7dd216
Fix leak in += with arrays
1999-09-29 17:45:44 +00:00
Andi Gutmans
63c15d292a
- Fix bug #2364 .
...
I haven't checked all of the conversion macros yet but there's a change
there are more such bugs there.
1999-09-23 16:13:31 +00:00
Andi Gutmans
f0a988a26a
- Fix leak when decrementing strings which actually are longs.
1999-09-09 12:59:09 +00:00
Zeev Suraski
18d11eea40
Revert the IS_RESOURCE patch. It had some unintended behavior.
1999-09-03 15:22:04 +00:00
Zeev Suraski
7b083fe5d1
Release resources when converting to other types (fix Thies's reported problem)
1999-09-03 00:11:47 +00:00
Zeev Suraski
09628fd51e
- Fixed a memory leak when using assignment-op operators with lvalue of type
...
string (or array/object)
1999-07-26 21:56:45 +00:00
Zeev Suraski
84aa8cce64
* Add an API macro users can use to ensure an array member can be modifed
...
before they modify it.
* Fix a bug and remove redundant code in convert_to_long() (booleans and
resources weren't changing their types
1999-07-23 16:02:51 +00:00
Andi Gutmans
bf8c6dbd99
- Get rid of C++ comments
1999-07-20 13:01:30 +00:00
Zeev Suraski
8d1de13aef
0.91 update
1999-07-19 20:02:12 +00:00
Zeev Suraski
b5b1117760
License update
1999-07-16 14:58:16 +00:00
Andi Gutmans
078c3ce198
- Fix for boolean convert to number
1999-07-14 09:10:14 +00:00
Zeev Suraski
2a6da7814c
Step 4:
...
Move to a 7-bit counter (not fully implemented yet)
1999-07-09 20:43:59 +00:00
Zeev Suraski
5f62c347c7
Step 2:
...
Rename is_ref to EA
1999-07-09 17:44:41 +00:00
Zeev Suraski
d189972737
Make convert_to_string() regard false as "" instead of "0"
1999-07-04 23:50:58 +00:00
Zeev Suraski
98b6ddda90
* Make the memory leak reporting code much better with repeats
...
* Remove useless variables
1999-06-26 11:48:22 +00:00
Zeev Suraski
3eac45ea80
* Fix concatenation of arrays (it was PHP 3.0 style, copying zval's instead
...
of zval *, and it wasn't using reference counting)
* Fix a memory leak in static array()'s with textual indices
1999-06-22 19:05:40 +00:00
Stig S. Bakken
80f1ce5eed
* added zend_binary_strcasecmp()
1999-06-15 22:32:51 +00:00
Zeev Suraski
0d560de1b7
Make the concatenation operator use make_printable as well
1999-06-11 15:37:43 +00:00
Zeev Suraski
c1f75b6fda
Now THAT's an annoying bug.
1999-06-10 23:03:35 +00:00
Andi Gutmans
7ed4923441
- Fix the static array() initializing
1999-06-09 19:26:54 +00:00
Zeev Suraski
9108abc287
Minor updates (mostly __declspec() stuff)
1999-06-04 11:44:02 +00:00
Zeev Suraski
bcc1337d8c
Support overwrite mode in zend_hash_merge()
1999-05-29 18:59:58 +00:00
Zeev Suraski
e115fdc6d6
The last fix was wrong
1999-05-24 16:48:01 +00:00
Zeev Suraski
cbcd462d46
Another operators fix
1999-05-24 16:43:47 +00:00
Zeev Suraski
97107dc440
boolean comparison didn't work with smaller-than and greater-than, something that
...
fucked up berber's site a bit. fixed.
1999-05-23 22:07:04 +00:00
Zeev Suraski
064f75fd1b
Several operator fixes. Should fix the MySQL problem.
1999-05-01 01:04:13 +00:00
Zeev Suraski
b2c5ef42d3
Arithmetics bug fix
1999-04-23 13:25:33 +00:00
Andi Gutmans
573b46022c
Zend Library
1999-04-07 18:10:10 +00:00