在 php 中,使用连接运算符 (.) 将值添加到数组的目的是什么?

Sha*_*san 3 php arrays

我对 php 比较陌生,正在学习一个教程,其中有一个代码可以像这样向数组添加值:

$errors = array();
$errors[] .= 'You must enter a value';
Run Code Online (Sandbox Code Playgroud)

所以我对上面的代码感到困惑。

我知道我可以像下面这样向数组声明和添加值。

$myarr = array();
$myarr[]= "aa";
$myarr[]= "bb";

print_r($myarr);
Run Code Online (Sandbox Code Playgroud)

此外,我可以使用字符串连接运算符 (.) 附加字符串,如下所示:

$str = "val1"."val2";
Run Code Online (Sandbox Code Playgroud)

但是在向数组添加值之前放置连接运算符 (.) 有什么意义呢?

Nic*_*ick 5

在这种特殊情况下,使用连接运算符没有意义。表达式的左侧$errors[]$errors数组中创建一个新的空元素,因此将某些内容连接到它与分配给它的效果相同。实际上,如果您尝试使用和不使用连接运算符的以下代码,您会看到结果是相同的:

$errors = array();
$errors[] .= 'You must enter a value';
print_r($errors);

$errors = array();
$errors[] = 'You must enter a value';
print_r($errors);
Run Code Online (Sandbox Code Playgroud)

输出:

Array
(
    [0] => You must enter a value
)
Array
(
    [0] => You must enter a value
)
Run Code Online (Sandbox Code Playgroud)