>백엔드 개발 >PHP 튜토리얼 > 点号的疑惑解决思路

点号的疑惑解决思路

WBOY
WBOY원래의
2016-06-13 13:32:012516검색

点号的疑惑

PHP code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
echo '1+5='.1;  //为什么这么写会报错
echo '1+5='. 1; //这句却能执行
echo '1+5='.(1);//外面弄个括号却又行了



------解决方案--------------------
.和数字相邻时,会被识别为小数
而且小于1的小数可以省略开始的0,比如0.1写成.1是合法的

所以 '1+5'.1 被解析成两个相邻的常量,它们之间没有运算符,自然会报错.

类似的,1."abc"也会报错
------解决方案--------------------
.和数字相邻时,会被识别为小数,正如二楼所说。
echo '1+5='. 1; //这句却能执行。.在PHP是连接符的意思,是进行字符串连接的意思。

------解决方案--------------------
如hengyu654所说,"."直接接数字的时候并不作为字符串并置符处理,而是作为小数点处理
如下:
PHP code

echo "thr"."ee";           //输出字符串"three"
echo "twe" . "lve";        //输出字符串"twelve"
echo 1 . 2;                //输出字符串"12"
echo 1.2;                  //输出数字1.2
echo 1 ..2;                //输出字符串"10.2" <div class="clear">
                 
              
              
        
            </div>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.