Outomatiese tipe-omskakeling in PHP
Soos jy reeds weet, moet strings in PHP in aanhalingstekens geplaas word. Dit kan gebeur dat alle karakters van die string syfers is. In hierdie geval, as 'n wiskundige bewerking op 'n string met syfers uitgevoer word - sal hierdie bewerking uitgevoer word asof ons wel getalle het, en nie strings nie:
<?php
echo '1' + '2'; // sal 3 vertoon
?>
In hierdie geval sien PHP dat ons probeer om 'n ongeldige bewerking vir strings, maar geldig vir getalle, uit te voer. Dit sien ook dat ons strings eintlik getalle in aanhalingstekens is. Daarom voer PHP outomaties die omskakeling van hierdie strings na getalle uit en voer die ooreenstemmende wiskundige bewerking daarop uit.
Die optelling van 'n string met syfers en 'n gewone getal sal op 'n soortgelyke manier plaasvind:
<?php
echo '1' + 2; // sal 3 vertoon
?>
Die volgorde van die optelling sal nie saak maak nie:
<?php
echo 1 + '2'; // sal 3 vertoon
?>
Alles wat gesê is, sal op 'n soortgelyke manier werk vir veranderlikes ook:
<?php
$a = '1';
$b = '2';
echo $a + $b; // sal 3 vertoon
?>
Sonder om die kode uit te voer, bepaal wat op die skerm vertoon sal word:
<?php
$a = '1';
$b = '2';
echo $a + $b + '3';
?>