echo 'Testing ' . 1 + 2 . '45';

解决方案 »

  1.   

    超级变态的试题,不知道在实际情况中会不会有这种情况出现,反正我是没有遇到过.
    面试官告诉我, .的优先级比+号的优先级高.
    后来在网上发现这一提法竞然最早出现在zend的认证试题的答案中.
    想必面试官是人云亦云了.
      

  2.   

    'Testing ' . 1 = 0 
    2 . '45' = 245
    0 + 245 = 245好无聊的面试官..
      

  3.   

    echo 'Testing ' . 1 + 2 . '45';
    echo '<br>';
    echo 1 + 2 . '45' . 'Testing ';//245
    //345Testing 看来还是同级啊
      

  4.   

    呵呵,手册中+,-,.三个运算符是同级的,同级的执行顺序由执行方向决定echo 'Testing ' . 1 + 2 . '45';
    -> 'Testing1'+2.'45';
    -> 2.'45'
    -> '245'echo 1 + 2 . '45' . 'Testing ';
    -> 3.'45'.'Testing'
    ->'345Testing'
      

  5.   

    echo 'Testing ' . 1 + 2 . '45';并列,从左往右
    .两边作为字符串+两边作为数字所以最后结果是字符串"245",不知道是否这么理解
      

  6.   


    从堕落群冒出来的……几个MJJ……
      

  7.   


    echo 'Testing '.1+2.'45';很独特哦,当你这样写的生活就报错了。一般如果要写,我会加上一个括号保险些
    echo 'Testing '.(1+2).'45';
      

  8.   

    echo 'Testing '.1+2.'45';
    echo 'Testing1`'+2 ,'45';
    那个+是什么作用?结果怎么变成245了,那个Testing1怎么没有了?   
      

  9.   


    第一步:'Testing'.1是字符串连接得到'Testing1';
    第二步:'Testing1'+2是算数运算得到2;
    第三步:2.'45'又是字符串连接得到'245'.各位大侠们,是这样么?
      

  10.   

    echo 'Testing ' . 1 + 2 . '45';
    'Testing'.1 ='Testing1'
    'Testing'+2 = 2
    2.'45'      = 245;
      

  11.   

    var_dump('Testing ' . 1 + 2 . '45'); //string(3) "245" +-. 优先级相同,自左向右依次运算'Testing ' . 1 + 2 . '45' :
    'Testing ' . 1 //'Testing ' . '1' ==> 'Testing 1'
    'Testing 1' + 2 //0 + 2 ==> 2
    2 . '45' //'2' . '45' ==> '245'
      

  12.   

    'Testing ' . (1 + 2) . '45'
    这种情况在日常写程序时是经常碰上的,所以这题并不算离谱。起码比那种分不清是考什么的脑筋急转弯要强多了。考题通常分三类。第一类考各种结构,设计。是给系统分析员的。第二类就是这类,是给一般基层程序员的。第三类就是脑筋急转弯了,是给不懂专业技能,准备招进来慢慢培养的应届生的。只要主考方能理解这三类题针对的对象就没有问题。三类混出是最傻的。