cz208209
V2EX  ›  PHP

PHP 的一道题 谁来指点一下?题: echo '1' . (print '2') + 3 输出 214 太神奇了。。。。

  •  
  •   cz208209 · Sep 22, 2015 · 5612 views
    This topic created in 4061 days ago, the information mentioned may be changed or developed.
    28 replies  •  2016-02-23 00:18:10 +08:00
    nisnaker
    nisnaker
    Sep 22, 2015
    1
    怎么就神奇了
    cz208209
    cz208209
    OP
    Sep 22, 2015
    2
    @nisnaker 你试一下
    nisnaker
    nisnaker
    Sep 22, 2015
    3
    先是 print '2'
    然后是 echo '1' . 1 + 3
    msxcms
    msxcms
    Sep 22, 2015❤️1
    4
    没什么神奇的
    cz208209
    cz208209
    OP
    Sep 22, 2015
    5
    明白了 print '2'之后会返回 1 然后 214
    justfindu
    justfindu
    Sep 22, 2015
    6
    话说有什么神奇的~
    jugelizi
    jugelizi
    Sep 22, 2015
    7
    小学数学没学好?
    括号内优先运算被执行了
    cz208209
    cz208209
    OP
    Sep 22, 2015
    8
    @nisnaker 明白了 print '2'之后会返回 1 然后 214 忘了 print 会有返回值
    qiayue
    qiayue
    Sep 22, 2015
    9
    print 2 输出 2 同时返回值 1
    1 + 3 = 4
    echo '1'.4 输入 14
    所以连起来就是 214
    cz208209
    cz208209
    OP
    Sep 22, 2015
    10
    @jugelizi 忘了 print 有回值
    fising
    fising
    Sep 22, 2015
    11
    print 2 输出 2 返回 1

    '1' . (print '2') + 3 => '1' . 1 + 3 => 14

    得到 214
    lianz
    lianz
    Sep 22, 2015
    12
    所以说, PHP 是最好的语言!!
    wapy
    wapy
    Sep 22, 2015
    13
    PHP 是最好的语言!!
    0bit
    0bit
    Sep 22, 2015
    14
    你们 PHPer 真会玩
    shoaly
    shoaly
    Sep 22, 2015
    15
    赞一个, 有点意思
    show8salary
    show8salary
    Sep 22, 2015
    16
    PHP 是最好的语言!!
    cz208209
    cz208209
    OP
    Sep 22, 2015
    17
    @lianz
    @wapy
    @0bit 快跪舔
    barbery
    barbery
    Sep 22, 2015❤️1
    18
    这种面试题有意思么
    iyaozhen
    iyaozhen
    Sep 22, 2015
    19
    print
    Returns 1, always.

    长见识了,第一次知道。
    ronaldm
    ronaldm
    Sep 22, 2015
    20
    @jugelizi 什么括号内的先运算,是 echo 后面的函数先运算,好吧。
    jackxiao
    jackxiao
    Sep 22, 2015
    21
    撞脸了。。
    cz208209
    cz208209
    OP
    Sep 22, 2015
    22
    @jackxiao 旺旺。。旺旺。。旺旺。。
    BOYPT
    BOYPT
    Sep 22, 2015
    23
    这么看来谭浩强应该出一本 PHP
    cz208209
    cz208209
    OP
    Sep 22, 2015
    24
    @BOYPT 谭天师的书我看了两遍 入门
    flydogs
    flydogs
    Sep 25, 2015
    25
    echo '1' . (print '2') + 3

    相当于
    $x = print '2'; //x=1 output:2
    echo '1'. $x+3; // output: 14

    所以输入是 214
    zonghua
    zonghua
    Sep 26, 2015
    26
    根本就是个 BUG
    fengmenggaokao
    fengmenggaokao
    Oct 5, 2015
    27
    Boring
    mrbush
    mrbush
    Feb 23, 2016
    28
    511
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4972 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 112ms · UTC 06:42 · PVG 14:42 · LAX 22:42 · JFK 01:42
    ♥ Do have faith in what you're doing.