Verwysings in foreach in PHP

Wanneer jy met die foreach-lus werk, lei die verandering van die veranderlike vir elemente nie tot veranderinge in die array self nie:

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

Die verlangde effek kan egter bereik word as jy die veranderlike vir elemente as 'n verwysing verklaar. In hierdie geval sal veranderinge van hierdie veranderlike lei tot veranderinge in die array:

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

Korrigeer die volgende kode sodat dit werk volgens die bedoeling:

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

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

Korrigeer die volgende kode sodat dit werk volgens die bedoeling:

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

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