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

解决方案 »

  1.   

    .和数字相邻时,会被识别为小数
    而且小于1的小数可以省略开始的0,比如0.1写成.1是合法的所以 '1+5'.1 被解析成两个相邻的常量,它们之间没有运算符,自然会报错.类似的,1."abc"也会报错
      

  2.   

    再比如
    echo "1+5"..1;
    不错报错
      

  3.   

    .和数字相邻时,会被识别为小数,正如二楼所说。
    echo '1+5='. 1; //这句却能执行。.在PHP是连接符的意思,是进行字符串连接的意思。
      

  4.   

    .和数字相邻时,会被识别为小数,正如二楼所说。
    echo '1+5='. 1; //这句却能执行。.在PHP是连接符的意思,是进行字符串连接的意思。
      

  5.   

    如hengyu654所说,"."直接接数字的时候并不作为字符串并置符处理,而是作为小数点处理
    如下:echo "thr"."ee";           //输出字符串"three"
    echo "twe" . "lve";        //输出字符串"twelve"
    echo 1 . 2;                //输出字符串"12"
    echo 1.2;                  //输出数字1.2
    echo 1 ..2;                //输出字符串"10.2"