![Is $array[] Really Faster Than array_push() for Appending Elements in PHP?](https://img.php.cn/upload/article/000/000/000/173046289032536.jpg)
Understanding Array Appending Performance in PHP: $array[] vs array_push()
While the PHP manual suggests avoiding function calls for optimal performance, there are conflicting opinions regarding the speed of using $array[] in comparison to array_push(). Let's clarify this through benchmarks and technical explanations.
Performance Test
Benchmarking reveals that $array[] is significantly faster than array_push() when adding individual elements to an array.
Code for Benchmarking:
<code class="php">$t = microtime(true);
$array = array();
for ($i = 0; $i < 10000; $i++) {
$array[] = $i;
}
print microtime(true) - $t;
print '<br>';
$t = microtime(true);
$array = array();
for ($i = 0; $i < 10000; $i++) {
array_push($array, $i);
}
print microtime(true) - $t;</code>Results:
Explanation
The PHP manual states that using $array[] avoids the overhead of calling a function, making it faster for adding single elements.
Myth Buster: Array_push() for Multiple Values
Contrary to intuitive thought, even for adding multiple values to an array, $array[] calls are faster than a single array_push(). This observation challenges the notion that array_push() is more efficient for bulk additions.
Conclusion
For appending individual elements to an array, $array[] is a clear winner in terms of performance. However, the speed difference is negligible for most practical applications. The simplicity and readability of $array[] make it a preferred choice for many developers.
The above is the detailed content of Is $array[] Really Faster Than array_push() for Appending Elements in PHP?. For more information, please follow other related articles on the PHP Chinese website!