Nuanțele conversiei la șir de caractere în PHP
În lecția precedentă am învățat să adunăm numerele ca șiruri de caractere. La o astfel de adunare, totuși, există nuanțe, când se adună nu variabile, ci imediat numere.
Faptul este că punctul este folosit nu doar pentru adunarea șirurilor, ci și pentru separarea părții fracționare de cea întreagă.
Dacă în jurul punctului se pun spații, atunci nu vor fi probleme:
<?php
echo 1 . 2; // va afișa '12'
?>
Iar dacă se elimină spațiile din jurul punctului, atunci vom obține o fracție, nu o adunare de șiruri:
<?php
echo 1.2; // va afișa 1.2
?>
Din cauza unor astfel de nuanțe se poate obține cu ușurință o eroare, dacă pe o parte a punctului se pune spațiu, iar pe cealaltă - nu:
<?php
echo 1. 2; // va da o eroare
?>
Cu variabilele, totuși, nu va fi o astfel de problemă:
<?php
$a = 1;
$b = 2;
echo $a.$b; // va afișa '12', nu o eroare
?>
Autorul codului a vrut să adune
numerele 3 și 4
ca șiruri de caractere:
<?php
echo 3.4;
?>
Codul, totuși, nu funcționează corect. Corectați eroarea autorului codului.