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];
?>