Skakels in PHP
In PHP kan jy 'n waarde van een veranderlike aan 'n ander toewys:
<?php
$num1 = 1;
$num2 = $num1; // wys toe
echo $num1; // 1
echo $num2; // 1
?>
Met so 'n toewysing word 'n kopie van die waarde van die eerste veranderlike in die nuwe veranderlike geskryf. Dit beteken dat die veranderlikes op geen manier verbind is nie en dat hulle onafhanklik van mekaar verander kan word. Kyk na die voorbeeldkode:
<?php
$num1 = 1;
$num2 = $num1;
$num2 = 2;
echo $num1; // 1 - het nie verander nie
?>
Dit is egter moontlik om te maak dat nie die waarde van die veranderlike gekopieer word nie, maar 'n skakel daarop. In hierdie geval sal die waarde van die ander veranderlike ook verander wanneer die waarde van een veranderlike verander.
Om 'n waarde per skakel oor te dra, moet jy 'n ampersand voor die naam van die veranderlike plaas:
<?php
$num1 = 1;
$num2 = &$num1; // dra per skakel oor
?>
Nou sal die verandering van die eerste veranderlike ook tot die verandering van die tweede lei:
<?php
$num1 = 1;
$num2 = &$num1;
$num2 = 2;
echo $num1; // 2 - het verander
?>
Soortgelyk, as ons die eerste veranderlike verander, sal die tweede ook verander:
<?php
$num1 = 1;
$num2 = &$num1;
$num1 = 2;
echo $num2; // 2
?>
Vertel wat die resultaat van die uitvoering van die kode sal wees:
<?php
$num1 = 1;
$num2 = $num1;
$num2 = 2;
echo $num1;
echo $num2;
?>
Vertel wat die resultaat van die uitvoering van die kode sal wees:
<?php
$num1 = 1;
$num2 = &$num1;
$num2++;
echo $num1;
echo $num2;
?>
Vertel wat die resultaat van die uitvoering van die kode sal wees:
<?php
$num1 = 1;
$num2 = $num1;
$num1++;
$num2++;
echo $num1;
echo $num2;
?>
Vertel wat die resultaat van die uitvoering van die kode sal wees:
<?php
$num1 = 1;
$num2 = &$num1;
$num1++;
$num2++;
echo $num1;
echo $num2;
?>