Niuanse konwersji na ciąg znaków w PHP
W poprzedniej lekcji nauczyliśmy się dodawać liczby jako ciągi znaków. Jednak przy takim dodawaniu występują niuanse, gdy dodajemy od razu liczby, a nie zmienne.
Chodzi o to, że kropka jest używana nie tylko do łączenia ciągów znaków, ale także do oddzielania części ułamkowej od całkowitej.
Jeśli wokół kropki umieścimy spacje, to nie będzie problemu:
<?php
echo 1 . 2; // wypisze '12'
?>
A jeśli usuniemy spacje wokół kropki, to otrzymamy ułamek, a nie konkatenację ciągów:
<?php
echo 1.2; // wypisze 1.2
?>
Z powodu takich niuansów można łatwo uzyskać błąd, jeśli po jednej stronie kropki postawimy spację, a po drugiej - nie:
<?php
echo 1. 2; // zwróci błąd
?>
Jednak ze zmiennymi nie ma takiego problemu:
<?php
$a = 1;
$b = 2;
echo $a.$b; // wypisze '12', a nie błąd
?>
Autor kodu chciał dodać
liczby 3 i 4
jako ciągi znaków:
<?php
echo 3.4;
?>
Kod jednak działa niepoprawnie. Popraw błąd autora kodu.