Referenser i foreach i PHP

När man arbetar med en foreach-loop leder ändring av variabeln för elementen inte till ändringar i själva arrayen:

php<?php
  $arr = [1, 2, 3, 4, 5];
  
  foreach ($arr as $elem) {
    $elem++;
  }
  
  var_dump($arr); // ändras inte
?>

Den önskade effekten kan dock uppnås om man deklarerar variabeln för elementen som en referens. I detta fall kommer ändringar av denna variabel att leda till ändringar i arrayen:

php<?php
  $arr = [1, 2, 3, 4, 5];
  
  foreach ($arr as &$elem) {
    $elem++;
  }
  
  var_dump($arr); // ändras
?>
Задание 1

Korrigera följande kod så att den fungerar enligt avsikten:

php<?php
  $arr = [1, 2, 3, 4, 5];

  foreach ($arr as &$elem) {
    $elem = sqrt($elem);
  }
  
  var_dump($arr); 
?>
Задание 2

Korrigera följande kod så att den fungerar enligt avsikten:

php<?php
  $arr = [1, 2, 3, 4, 5];

  foreach ($arr as &$elem) {
    $elem ** 2;
  }
  
  var_dump($arr); 
?>