Judy 2.5.1

PHP Judy implements sparse dynamic arrays (aka Judy Arrays)


PHP Judy implements sparse dynamic arrays (aka Judy Arrays). This extension is based
on the Judy C library. A Judy array consumes memory only when it is populated,
yet can grow to take advantage of all available memory if desired. Judy's key benefits
are scalability, high performance, and memory efficiency.

License: PHP

Changes

- FIX: string keys containing an embedded NUL byte are now rejected with an
exception on all six string-keyed types, instead of being silently truncated
at the NUL. Previously STRING_TO_INT and STRING_TO_MIXED truncated the key, so
"ab\0cd" and "ab" collided and one value was destroyed with no signal; the
four *_HASH/*_ADAPTIVE types already rejected such keys on write but still
truncated them on every ordered and range operation (first/last/searchNext/
prev/slice/deleteRange and the bounds of keys/values/toArray/size), because
all six seek through the same JudySL key index. JudySL keys are NUL-terminated
by construction, so rejecting is the only correct behaviour. High-byte keys
(0x80-0xFF) are unaffected and remain binary-safe, including 0xFF prefix-carry
arithmetic. See MIGRATION_2.5.0.md.