⊗ppPmScRP 208 of 447 menu

Референции в PHP

В PHP може да присвоите стойност на една променлива в друга:

<?php $num1 = 1; $num2 = $num1; // присвояваме echo $num1; // 1 echo $num2; // 1 ?>

При такова присвояване в новата променлива се записва копие на стойността на първата променлива. Това означава, че променливите не са свързани по никакъв начин една с друга и могат да се променят независимо. Вижте в примера с код:

<?php $num1 = 1; $num2 = $num1; $num2 = 2; echo $num1; // 1 - не се е променило ?>

Може, обаче, да се направи така, че да се копира не стойността на променливата, а референция към нея. В този случай при промяна на стойността на едната променлива, ще се променя и стойността на другата.

За да предадете стойност по референция, трябва пред името на променливата да поставите амперсанд:

<?php $num1 = 1; $num2 = &$num1; // предаваме по референция ?>

Сега промяната на първата променлива ще доведе и до промяна на втората:

<?php $num1 = 1; $num2 = &$num1; $num2 = 2; echo $num1; // 2 - променено ?>

Аналогично, ако променим първата променлива, ще се промени и втората:

<?php $num1 = 1; $num2 = &$num1; $num1 = 2; echo $num2; // 2 ?>

Разкажете, какъв ще бъде резултатът от изпълнението на кода:

<?php $num1 = 1; $num2 = $num1; $num2 = 2; echo $num1; echo $num2; ?>

Разкажете, какъв ще бъде резултатът от изпълнението на кода:

<?php $num1 = 1; $num2 = &$num1; $num2++; echo $num1; echo $num2; ?>

Разкажете, какъв ще бъде резултатът от изпълнението на кода:

<?php $num1 = 1; $num2 = $num1; $num1++; $num2++; echo $num1; echo $num2; ?>

Разкажете, какъв ще бъде резултатът от изпълнението на кода:

<?php $num1 = 1; $num2 = &$num1; $num1++; $num2++; echo $num1; echo $num2; ?>
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне