Req #72083 [Asn->Opn]: native array_add function; get last added key instead of count(array) with push

From: Date: Mon, 11 Sep 2017 12:17:25 +0000
Subject: Req #72083 [Asn->Opn]: native array_add function; get last added key instead of count(array) with push
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-211065@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=72083&edit=1 ID: 72083 Updated by: cmb@php.net Reported by: raat1979 at gmail dot com Summary: native array_add function; get last added key instead of count(array) with push -Status: Assigned +Status: Open Type: Feature/Change Request Package: Arrays related Operating System: Irrelevant PHP Version: Next Minor Version -Assigned To: cmb +Assigned To: Block user comment: N Private report: N New Comment: > Basically we need a php implementation of > zend_hash_next_free_element Thanks for the clarification. A pull request would be welcome. Previous Comments: ------------------------------------------------------------------------ [2017-09-10 21:44:14] raat1979 at gmail dot com Basically we need a php implementation of zend_hash_next_free_element ------------------------------------------------------------------------ [2017-09-10 21:40:49] raat1979 at gmail dot com Sure, but after this I'd like to know the index of the item added. (which would contain a mix of numeric and assoc keys) ------------------------------------------------------------------------ [2017-09-10 21:23:28] cmb@php.net Sorry, I fail to understand what you are proposing. If I want to add an element to an arbitrary array, I would use $pr[] = $element; Wouldn't that work for you? ------------------------------------------------------------------------ [2016-04-23 07:37:23] raat1979 at gmail dot com Thinking about this there is currently is no (normal) way to get the next available numeric member of an array, one could consider this a bug ------------------------------------------------------------------------ [2016-04-23 06:53:31] raat1979 at gmail dot com looking at the php source array_push ends with zend_hash_num_elements I guess that's basically performing the equivalent of a php count(array) http://www.phpinternalsbook.com/hashtables/hashtable_api.html shows there is a call zend_hash_next_free_element the add function would need to work exactly like the push function except for the last element which should call zend_hash_next_free_element just before storing the value and store its result in a variable to be used as the return value (or break on first failure and issue error like push does) ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=72083 -- Edit this bug report at https://bugs.php.net/bug.php?id=72083&edit=1

« previous php.bugs (#211065) next »