“[]”运算符的名称是啥?

Posted

技术标签:

【中文标题】“[]”运算符的名称是啥?【英文标题】:What is the name of the "[]" operator?“[]”运算符的名称是什么? 【发布时间】:2013-08-06 05:26:17 【问题描述】:

有问题的运算符可用于将值推入数组:

$array []= $value

关于array_pushphp.net 文章多次提及它,但似乎没有提及它的名字。

【问题讨论】:

即数组下标运算符。你可以看到更多关于如何重载它here ...或“方括号语法”:php.net/manual/de/language.types.array.php 让我们称之为 NEW_ELEMENT_INLINE_OPERATOR ?但是您可以选择任何名称或标题来调用该结构:-) 【参考方案1】:

“[]”运算符的名称是什么?

没有特殊的名。 PHP docs 简单地称它为方括号语法

注意:不是$arr []=,而是$arr[] =。虽然 PHP 会忽略空格,但不应将其与其他速记赋值混淆。

如果您需要了解 $arr[] = ... 的作用,请参阅 Flashin's answer。

【讨论】:

你能举一个“其他速记作业”的例子吗? 当然。诸如+=-=&= 之类的东西。虽然它可能有效,但将数组赋值写为[]= 并不常见。也就是说,方括号与变量相关联,而不是=【参考方案2】:

您可以认为这是一个数组运算符。但不知道它是否有确切的名称。

使用方括号语法创建/修改 可以通过在其中显式设置值来修改现有数组。

这是通过将值分配给数组并在括号中指定键来完成的。也可以省略该键,从而产生一对空括号 ([])。

$arr[key] = value;
$arr[] = value;
// key may be an integer or string
// value may be any value of any type

如果 $arr 还不存在,它将被创建,所以这也是创建数组的另一种方式。然而,这种做法是不鼓励的,因为如果 $arr 已经包含一些值(例如来自请求变量的字符串),那么这个值将保留在该位置并且 [] 实际上可能代表字符串访问运算符。通过直接赋值来初始化变量总是更好。

http://nl3.php.net/manual/en/language.types.array.php

【讨论】:

您给出的报价似乎没有使用该术语(即array operator)。

以上是关于“[]”运算符的名称是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Haskell 中 (>>) 运算符的正确名称是啥?

数据库投影的定义是啥?

python中整数除法的基本含义是啥?

||= 是啥意思? [复制]

问号和点运算符是啥意思?在 C# 6.0 中是啥意思?

在 Python 中合并命名元组的简单方法是啥?