Референци-низи во PHP

Во PHP, за разлика од другите програмски јазици, низите исто така се копираат, а не се пренесуваат по референца.

Ајде да се увериме во ова:

php<?php
  $arr1 = [1, 2, 3, 4, 5];
  $arr2 = $arr1;
  $arr2[0] = '!';
  
  var_dump($arr1); // нема да се промени
?>

Сега ќе натераме низата да се пренесува по референца:

php<?php
  $arr1 = [1, 2, 3, 4, 5];
  $arr2 = &$arr1;
  $arr2[0] = '!';
  
  var_dump($arr1); // ќе се промени
?>
Задание 1

Кажете, каков ќе биде резултатот од извршувањето на кодот:

php<?php
  $arr1 = [1, 2, 3, 4, 5];
  
  $arr2 = $arr1;
  $arr2[0] = '!';
  
  echo $arr1[0];
  echo $arr2[0];
?>
Задание 2

Кажете, каков ќе биде резултатот од извршувањето на кодот:

php<?php
  $arr1 = [1, 2, 3, 4, 5];
  
  $arr2 = &$arr1;
  $arr1[0]++;
  
  echo $arr1[0];
  echo $arr2[0];
?>
Задание 3

Кажете, каков ќе биде резултатот од извршувањето на кодот:

php<?php
  $arr1 = [1, 2, 3, 4, 5];
  
  $arr2 = &$arr1;
  
  $arr1[0]++;
  $arr2[0]++;
  
  echo $arr1[0];
  echo $arr2[0];
?>