Alfatyhin / loftshool

0 stars 0 forks source link

Имена переменных #4

Closed nejtr0n closed 3 years ago

nejtr0n commented 3 years ago

Во вложенном цикле имя переменной ключа $k совпадает с внешним циклом https://github.com/Alfatyhin/loftshool/blob/54183ad7e815ab5601f398e83a879fe927081824/tasks/week_1/task_1.php#L99-L104

Это может привести к неожиданному поведению программы. Например ты решишь использовать ключ из внешнего цикла после внутреннего

 foreach ($cars as $k => $val) { 
     echo "<hr />CAR $k <br />"; 
     foreach ($val as $k => $v) { 
         echo "$v "; 
     }

     echo $k; 
 } 

Ты ожидаешь, что в $k хранится имя ключа от внешнего цикла, а на самом деле оно затёрто значением из внутреннего цикла. Рекомендую давать осмысленные имена для всех переменных, если существуют вложенные циклы. Например:

  foreach ($cars as $carName => $carData) { 
     ....
     foreach ($carData as $dataKey => $dataValue) { 
        ......
     }
 }