निम्न कोड में:फ़ोरैच लूप में फ़ंक्शन का उपयोग करने से परिणाम कैश होता है, या हर बार फ़ंक्शन को कॉल करता है?
function a(){
echo 'a';
return array(1,2,3,4);
}
foreach(a() as $t){
echo $t;
}
हम देख सकते हैं एक() केवल एक बार कहा जाता है, और यह मान कैश किया गया है लगता है ...
लेकिन तब मैं this debate (see comments on the question) को देखने के लिए मैं कुछ याद आ रही है मिल गया?
इसे बदलने के लिए '$ ($ a = 0; $ a <= count (a()); $ a ++)' और देखें कि आपको क्या मिलता है :) –