Ilia Alshanetsky
739696d2d7
Fixed but #29437 (Possible crash inside array_walk_recursive()).
2004-07-29 00:35:07 +00:00
Andrey Hristov
e64af9a898
proto fix
...
(thanks to dave%php.net for spotting)
2004-07-26 06:32:54 +00:00
Andrey Hristov
d77a3f92e6
make behavior a bit field
2004-07-24 09:25:52 +00:00
Andrey Hristov
5e5d2640fb
add array_:
...
intersect_key()
intersect_ukey()
diff_key()
diff_ukey()
The first two by a patch of Cristiano Duarte. The second two were
implemented in almost the same way except one small difference.
2004-07-21 21:17:56 +00:00
Andrey Hristov
0eef82a733
fixing bug #28974 : overflow in array_slice()
...
The same kind of overflow appeared in array_splice(), substr() and
substr_replace()
2004-07-11 21:15:04 +00:00
Andrey Hristov
268d3d7ba3
fixing bug #28739
...
array_*diff() and array_*intersect() not clearing the fci cache before work.
FCI call cache was introduced in HEAD. All functions that perform sorting
of arrays clear the fci cache before work. array_*diff() and\ array_*intersect()
were somehow missed to be updated.
2004-07-11 19:20:05 +00:00
Andrey Hristov
7af08c0c34
fixing bug 29038:
...
EXTR_PREFIX_SAME is prevented from creating a new variable when the key
is a empty string. EXTR_PREFIX_ALL is also prevented from doing that,
but works for numbers.
2004-07-11 18:18:05 +00:00
Ilia Alshanetsky
4ebcb2ecfe
Fixed bug #29008 (array_combine() does not handle non-numeric/string keys).
2004-07-11 15:23:57 +00:00
Ilia Alshanetsky
79c28f7618
Fixed bug #29049 (array sorting via user function/method does not validate
...
it).
2004-07-08 17:07:22 +00:00
Wez Furlong
263723ec9b
Update for count_elements handler for overloaded objects.
2004-05-04 15:03:48 +00:00
Ilia Alshanetsky
c85843aec1
MFB: Revert patch for bug #27782 .
2004-04-01 22:07:42 +00:00
Ilia Alshanetsky
ec4655f864
Fixed bug #27782 (Wrong behaviour of next(), prev() and each()).
2004-03-30 19:08:43 +00:00
Andrey Hristov
eaab3ef8cd
this should not belong to HEAD
2004-01-28 20:25:30 +00:00
Andrey Hristov
9957fc6305
Added third parameter (optional) to array_keys for strictness. It behaves
...
like the "strict" parameter of in_array().
#Closing feature request #24258
2004-01-24 00:25:58 +00:00
Andrey Hristov
9e5df0c666
HEAD is now bundled only with ZE2
2004-01-17 17:33:11 +00:00
Andi Gutmans
dbeb4158d2
- A belated happy holidays and PHP 5
2004-01-08 08:18:22 +00:00
Andrey Hristov
638b940307
New array functions for doing intersection of arrays that are complementary
...
to array_*diff* family of functions. Namely array_uintersect(), array_uintersect_assoc(),
array_intersect_uassoc() and array_uintersect_uassoc(). Test case is also included.
#docs and news entry later.
2003-10-09 08:10:39 +00:00
Ilia Alshanetsky
31a3c87159
Fixed clobbering of the source array, when merging complex
...
multi-dimensional arrays. Bug reported by Lukas Smith.
2003-10-05 19:37:02 +00:00
Moriyoshi Koizumi
75bb36ed09
Fixed bug #25708 (extract($GLOBALS, EXTR_REFS) mangles $GLOBALS)
2003-10-02 22:20:48 +00:00
Andrey Hristov
40088d0bbc
smash a segmentation fault
2003-09-30 15:00:36 +00:00
Andrey Hristov
02827c46be
Memory leak fixed (no need of MFH since this is code specific to PHP5)
2003-09-30 12:43:58 +00:00
Hartmut Holzgraefe
075e66cc08
signed/unsigned compiler warning fixes
2003-09-26 08:09:56 +00:00
Ilia Alshanetsky
6966350013
Fixed typo.
2003-09-26 00:40:32 +00:00
Andrey Hristov
3579f212df
4 new functions :
...
array_udiff()
array_udiff_assoc()
array_diff_uassoc()
array_udiff_uassoc()
They work like array_diff() or array_diff_assoc() but callback function(s)
can be used to perform the comparisons. For example array_udiff_uassoc()
expects 2 callbacks are last 2 parameters one is used to compare the values
of the entries in the arrays the second to compare the keys.
Class methods are also valid callbacks. Even when the data that should be
used in the comparison is private or protected then a static method of a
class should be used (this behaviour can be seen in the regression test -
007.phpt).
2003-09-23 17:37:29 +00:00
Andrey Hristov
63d7df3e2f
improve the fix for #25494 . If more then one bad parameter is passed
...
an warning for all will be emitted.
2003-09-22 23:19:17 +00:00
Jay Smith
6c6fd76bac
Fixed bug #25494 (array_merge allowing "false" as argument (silent when
...
non-array is passed))
# 4.3 throws E_NOTICEs, 5 errors out on non-array args as per Ilia's
# suggestion.
2003-09-11 17:40:18 +00:00
foobar
8733d2dacb
revert that, it did not fix anything
2003-08-13 01:37:31 +00:00
foobar
0ee19d47d9
Fix external builds (configure run outside srcdir)
2003-08-13 01:24:27 +00:00
Ilia Alshanetsky
ed40ae2650
emalloc -> safe_emalloc
2003-08-11 23:16:54 +00:00
Ilia Alshanetsky
e5b7d5ccb4
Fixed bug #24897 (inconsistent behavior of shuffle() & array_multisort())
2003-08-09 20:49:00 +00:00
Ilia Alshanetsky
e49964fe99
Do not assume array contains numeric values.
2003-08-09 16:43:28 +00:00
Ilia Alshanetsky
a2873880f6
Fixed bug #24980 (array_reduce() uses first element as default running
...
total).
Fixed memory leak that can be replicated using the function example on
http://www.php.net/array_reduce
2003-08-08 23:50:36 +00:00
Zeev Suraski
90b29aa076
Replace fast_call_user_function() with zend_call_function()
2003-08-05 10:29:03 +00:00
Zeev Suraski
2547b6f6f6
Fix bug #24652 - Sterling, do you begin to think that maybe it wasn't such
...
a good idea?
2003-08-04 08:38:24 +00:00
Ilia Alshanetsky
ee3e4f79df
Removed unused variable.
2003-07-25 03:03:26 +00:00
Zeev Suraski
0a49c033d0
- Use the new infrastructure of zend_symtable_*() (fixes bug #24565 )
...
- Fix bogus use of get_current_key()
2003-07-22 16:08:50 +00:00
Ilia Alshanetsky
6057160dbf
Fixed bug #24198 (Invalid recursion detection in array_merge_recurcive())
2003-06-16 17:35:16 +00:00
Andrey Hristov
2d4449caf9
silly bug
2003-06-12 15:11:11 +00:00
James Cox
f68c7ff249
updating license information in the headers.
2003-06-10 20:04:29 +00:00
Sterling Hughes
295a1c665c
fix array_key_exists() from HANDLE_NUMERIC() changes
...
# need to go through this file and find any stuff that relies on this
# change
2003-06-05 13:58:14 +00:00
Sterling Hughes
3c6fd35007
initialize these to NULL
2003-05-20 18:18:56 +00:00
Sterling Hughes
9ac50a13d7
convert array functions to use fast_call_user_function(), gives a nice
...
performance win.
2003-05-20 16:46:53 +00:00
Moriyoshi Koizumi
4e9e9c6e21
Fixed bug #22463 and bug #23581
2003-05-11 06:36:37 +00:00
Sara Golemon
07c679064a
Bug Fix (22433). When the bottom of a range() is chr(0) or the top is chr(255), the for loop carries over and never exits.
2003-05-02 00:58:02 +00:00
Moriyoshi Koizumi
0c5548e636
Fixed implicit cast issue with is*() and to*() functions
2003-04-16 21:40:48 +00:00
Sara Golemon
465bb61357
Kludgy fix for floating point drift causing problems like range(1.0,1.5,0.1) == array(1.0,1.1,1.2,1.3,1.4);
2003-04-03 18:33:05 +00:00
Rasmus Lerdorf
4b343a0562
MFB
2003-04-01 21:47:21 +00:00
Ilia Alshanetsky
3db5278dcc
CS
2003-03-27 18:57:53 +00:00
Andrey Hristov
8c2dbd5f0f
additional speedup for array_shift(). No need to rehash if the removed element's
...
key is not scalar and elements with scalar keys are already well numbered
(sequentially from 0) for some reason. This is the case if the leading
elements have no scalar indexes.
2003-02-22 13:55:11 +00:00
Andrey Hristov
94040a28ce
rehash only in case something is changed.
...
#lowers the execution time in half on my machine on array with 1000 elements
#with nonscalar keys. Maybe it can be optimized further.
2003-02-22 10:54:26 +00:00