What is the difference between .= and += in PHP?

前端 未结 6 1232
傲寒
傲寒 2020-12-06 09:42

What are the differences between .= and += in PHP?

6条回答
  •  难免孤独
    2020-12-06 10:03

    Quite simply, "+=" is a numeric operator and ".=" is a string operator. Consider this example:

    $a = 'this is a ';
    $a += 'test';
    

    This is like writing:

    $a = 'this' + 'test';
    

    The "+" or "+=" operator first converts the values to integers (and all strings evaluate to zero when cast to ints) and then adds them, so you get 0.

    If you do this:

    $a = 10;
    $a .= 5;
    

    This is the same as writing:

    $a = 10 . 5;
    

    Since the "." operator is a string operator, it first converts the values to strings; and since "." means "concatenate," the result is the string "105".

提交回复
热议问题