Automatisk typkonvertering i PHP
Som du redan vet ska strängar i PHP omges av citationstecken. Det kan hända att alla tecken i strängen är siffror. I detta fall, om en matematisk operation utförs på en sträng med siffror - kommer denna operation att utföras som om vi verkligen hade siffror, och inte strängar:
<?php
echo '1' + '2'; // skriver ut 3
?>
I detta fall ser PHP att vi försöker utföra en ogiltig operation för strängar, men giltig för siffror. Den ser också att våra strängar faktiskt är siffror inom citationstecken. Därför utför PHP automatiskt en konvertering av dessa strängar till siffror och utför motsvarande matematisk operation på dem.
På ett liknande sätt kommer addition av en sträng med siffror och ett vanligt tal att ske:
<?php
echo '1' + 2; // skriver ut 3
?>
Det spelar ingen roll i vilken ordning additionen utförs:
<?php
echo 1 + '2'; // skriver ut 3
?>
Allt som sagts kommer att fungera på samma sätt för variabler:
<?php
$a = '1';
$b = '2';
echo $a + $b; // skriver ut 3
?>
Utan att köra koden, avgör vad som kommer att skrivas ut på skärmen:
<?php
$a = '1';
$b = '2';
echo $a + $b + '3';
?>