Les tableaux par référence en PHP
En PHP, contrairement à d'autres langages de programmation, les tableaux sont également copiés, et non passés par référence.
Vérifions cela :
php<?php
$arr1 = [1, 2, 3, 4, 5];
$arr2 = $arr1;
$arr2[0] = '!';
var_dump($arr1); // ne changera pas
?>
Forçons maintenant le tableau à être passé par référence :
php<?php
$arr1 = [1, 2, 3, 4, 5];
$arr2 = &$arr1;
$arr2[0] = '!';
var_dump($arr1); // changera
?>
Задание 1
Expliquez quel sera le résultat de l'exécution du code :
php<?php
$arr1 = [1, 2, 3, 4, 5];
$arr2 = $arr1;
$arr2[0] = '!';
echo $arr1[0];
echo $arr2[0];
?>
Задание 2
Expliquez quel sera le résultat de l'exécution du code :
php<?php
$arr1 = [1, 2, 3, 4, 5];
$arr2 = &$arr1;
$arr1[0]++;
echo $arr1[0];
echo $arr2[0];
?>
Задание 3
Expliquez quel sera le résultat de l'exécution du code :
php<?php
$arr1 = [1, 2, 3, 4, 5];
$arr2 = &$arr1;
$arr1[0]++;
$arr2[0]++;
echo $arr1[0];
echo $arr2[0];
?>