= "Hi {$x['first_name']}, what do you like the most about {$x['language']}?";
                  
                  
                      return $x;
                  
                  
                    },$a);
                  
                  
                  }
                  
                  
                  
                  
                  
                  Методу x передается двумерный массив, или массив объектов.   Ведь все равно не смотря на & в array_map возратиться массив новый объектов? потому что по return произведется копирования.  Или же просто добавится поле greeting в уже существующие подмассивы?
                  
                  
                
function greet_developers($a) { $y = array_map(function(&$x){ $x['greeting'] = "Hi {$x['first_name']}, what do you like the most about {$x['language']}?"; return $x; },$a); $a[0]['test'] = "yes"; if(isset($y[0]['test'])) echo "yes returned an array of same subobject! \n"; if(isset($a[0]['test'])) echo "Andthe changes are add! \n"; return $y; } Новые объекты создаются. return x внутри array_map создает копию x.
Обсуждают сегодня