Массивҳои истинодӣ дар 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];
?>