Automaatne tüübiteisendus PHP-s
Nagu te juba teate, tuleks PHP-s stringid panna jutumärkidesse. Võib juhtuda, et kõik stringi sümbolid on numbrid. Sel juhul, kui numbritega stringi peal teha mõni matemaatiline tehe – see tehe tehakse nii, nagu meil oleksid tõepoolest numbrid, mitte stringid:
<?php
echo '1' + '2'; // väljastab 3
?>
Sel juhul näeb PHP, et me proovime teha stringide jaoks sobimatut, kuid numbrite jaoks sobivat tehet. Ta näeb ka seda, et tegelikult on meie stringid numbritest jutumärkides. Seetõttu teeb PHP automaatselt nende stringide teisendamise numbriteks ja teeb nendega vastava matemaatilise tehte.
Samamoodi toimub numbritega stringi liitmine tavalise numbriga:
<?php
echo '1' + 2; // väljastab 3
?>
Sel juhul ei ole oluline, millises järjekorras liitmine teha:
<?php
echo 1 + '2'; // väljastab 3
?>
Kõik öeldu töötab samamoodi ka muutujate puhul:
<?php
$a = '1';
$b = '2';
echo $a + $b; // väljastab 3
?>
Määrake, ilma koodi käivitamata, mis ekraanile kuvatakse:
<?php
$a = '1';
$b = '2';
echo $a + $b + '3';
?>