你能在PHP中将字符串追加到变量中吗?

2022-08-30 08:23:25

为什么以下代码输出 0?

它使用数字而不是字符串就好了。我在JavaScript中也有类似的代码,也可以工作。PHP不喜欢带字符串的+=吗?

<?php
    $selectBox = '<select name="number">';
    for ($i=1; $i<=100; $i++)
    {
        $selectBox += '<option value="' . $i . '">' . $i . '</option>';
    }
    $selectBox += '</select>';

    echo $selectBox;
?>

答案 1

这是因为 PHP 使用句点字符进行字符串串联,而不是加号字符 。因此,要追加到要使用运算符的字符串:.+.=

for ($i=1;$i<=100;$i++)
{
    $selectBox .= '<option value="' . $i . '">' . $i . '</option>';
}
$selectBox .= '</select>';

答案 2

在 PHP 中,使用 .= 追加字符串,而不是 。+=

为什么此输出 0?[...]PHP不喜欢带字符串的+=吗?

+=是将一个数字加到另一个数字的算术运算符。将该运算符与字符串一起使用会导致自动类型转换。在OP的情况下,字符串已转换为值的整数。0


有关 PHP 中运算符的更多信息:


推荐