Прежде всего, использование одной и той же переменной в цикле не является хорошей практикой, даже если она присваивается каждый раз. В PHP переменная ячейка памяти восстанавливается каждый раз, поэтому без вреда для нее использовать одноименную переменную. В вашем коде 2-й цикл будет работать только тогда, когда выполнено первое условие if
, поэтому оно зависит от передачи параметров функции.
<?php
function fun($var1,$var2)
{
$arr1=array(1,2,3,4);
$arr2=array(10,11,12,13);
foreach($arr1 as $var3)
{
if ($var3 == $var2) {
echo $var3;
foreach ($arr2 as $var3 ) {
echo 'inner';
echo $var3;
if ($var3 == $var2) {
}
}
}
}
}
fun(10,1); // here 2nd loop will work as $var2 will satisfy the first condition.
Output : 1inner10inner11inner12inner13
fun(10,11); // here 2nd loop will no work as $var2 will not satisfy the first condition.
Output : '' //no output
Надеюсь, я смогу правильно объяснить вам ситуацию.