From: Tyson Andre Date: Tue, 29 Oct 2019 23:48:28 +0000 (-0400) Subject: Update documentation/comment for GH-4860 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=96f361dca08bb6a7c9e0a729b31ac3eefe480215;p=php Update documentation/comment for GH-4860 Fix folding for the new helper method. Clarify comment in UPGRADING: The performance on associative arrays would also improve, as long as no offsets were unset (no gaps). Packed arrays can have gaps. Closes GH-4873. [ci skip] --- diff --git a/UPGRADING b/UPGRADING index ba32d55eef..0bf9bccf43 100644 --- a/UPGRADING +++ b/UPGRADING @@ -371,6 +371,6 @@ PHP 8.0 UPGRADE NOTES 14. Performance Improvements ======================================== -- array_slice() on a packed array will no longer scan the whole array to find +- array_slice() on an array without gaps will no longer scan the whole array to find the start offset. This may significantly reduce the runtime of the function with large offsets and small lengths. diff --git a/ext/standard/array.c b/ext/standard/array.c index 9b50186167..413ed319d7 100644 --- a/ext/standard/array.c +++ b/ext/standard/array.c @@ -3480,6 +3480,7 @@ static inline Bucket* find_bucket_at_offset(HashTable* ht, zend_long offset) /* Return a pointer to the end of the bucket array. */ return ht->arData + ht->nNumUsed; } +/* }}} */ /* {{{ proto array array_slice(array input, int offset [, int length [, bool preserve_keys]]) Returns elements specified by offset and length */