'foreach' 'for' लूप की तुलना में धीमा है। foreach उस सरणी की प्रतिलिपि बनाता है जिस पर पुनरावृत्ति करने की आवश्यकता होती है।
बेहतर प्रदर्शन के लिए, संदर्भों की अवधारणा का उपयोग करने की आवश्यकता है। इसके अलावा, 'foreach' का उपयोग करना आसान है।
उदाहरण
नीचे एक सरल कोड उदाहरण दिया गया है -
<?php $my_arr = array(); for ($i = 0; $i < 10000; $i++) { $my_arr[] = $i; } $start = microtime(true); foreach ($my_arr as $k => $v) { $my_arr[$k] = $v + 1; } echo "This completed in ", microtime(true) - $start, " seconds"; echo "<br>"; $start = microtime(true); foreach ($my_arr as $k => &$v) { $v = $v + 1; } echo "This completed in ", microtime(true) - $start, " seconds"; echo "<br>"; $start = microtime(true); foreach ($my_arr as $k => $v) {} echo "This completed in ", microtime(true) - $start, " seconds"; echo "<br>"; $start = microtime(true); foreach ($my_arr as $k => &$v) {} echo "This completed in ", microtime(true) - $start, " seconds"; ?>
आउटपुट
यह निम्नलिखित आउटपुट देगा -
This completed in 0.00058293342590332 seconds This completed in 0.00063300132751465 seconds This completed in 0.00023412704467773 seconds This completed in 0.00026583671569824 seconds