素材牛VIP会员
php语法设计 数组为什么不采用普遍的{}大括号呢? 其它的 编程语言 在数组初始值 都是 用大括号{} 包含的。
 ha***00  分类:PHP代码  人气:874  回帖:6  发布于6年前 收藏

php原来只能用 array=(),在新版本中 采用了 短语法 用到 方括号[ ].. 采用大括号{} 不更符合普罗大众吗?
c# int[] array = { 1, 2, 3, 4, 5, 6 };
java int[] arr = {0,0,0,0,0,0,0,0,0,0,0,};
python ( )元组 [ ]列表/数组 { }字典 没有混合成到一块,,,python 倒是跟php 有点亲戚关系 都是用到了 [ ]
golang arr:=[...]int{1,1,1,1,1,1,1,1,1}

都是大括号 { } 包含,,,

php 采用 [ ] 中括号包含,难道是原因为 {} 大括号在php中有一些特别用途 $a="aaaaaa{$b}aaaaaa"; 怕产生歧义?,要不就是敲 [ ]中括号比桥 { } 大括号方便,,不用 shift 键。
瞎猜的!!!就是不知道PHP开发组内部是怎么计论的处理什么理由,用 [ ] 方括号,不用 { } 大括号。

大括号嘛 大!大!括号嘛,,,PHP的这个数据结构又是混合型的, 大括号嘛,最大的括号嘛,,哈哈,,什么都能括住,,大括号 { } 这个符号图形感觉也符合视觉需求呀。

 标签:php

讨论这个帖子(6)垃圾回帖将一律封号处理……

Lv5 码农
16***50 软件测试工程师 6年前#1

补充 @yetone 的回答:

PHP之前很多年数组的表示形式一直是 array(),而 [ ] 方式是在PHP5.4中才引入的。如果你写过一段时间PHP,你就会发现用 [ ] 表示数组也是你内心真正想的一件事,这是顺其自然的。

还有就是array()写起来真是太TM费劲了好吗

PHP的数组根本就不是传统的C数组,而是 map、链表、堆、栈......
Lv2 入门
jh***23 Web前端工程师 6年前#2

php的数组实际上是字典了 所以不能拿其他语言的数组 要拿字典来比较

py的字典是{}
js的对象是{}
swift的字典是[:]

看起来新出现的语言倾向于使用中括号
而php5.4是较新的 所以使用中括号

Lv3 码奴
sc***31 Linux系统工程师 6年前#3

自 5.4 起可以使用短数组定义语法,用 [] 替代 array()。
编程语言一般都是用[]表示数组或队列,用{}表示字典或集合。
其实在php中数组可以表示字典,因为是键值对。所以题主才想到了用{}吧

Lv1 新人
记***香 站长 6年前#4

最新版本PHP5.4+已经支持了,不过用的人很少。大部分都是PHP 5.2,php5.3.3

Lv1 新人
非***扰 交互设计师 6年前#5

[] 在 PHP5.4 已经开始支持,并且不是所以的语言定义数组都用 {},比如 JS

Lv1 新人
qq***qq JS工程师 6年前#6

用大括号才奇怪吧,在数学语境下,{}代表集合,[]代表列表,集合是没有顺序而言的,而列表是有序的。所以越来越多的现代语言都用 [] 来表示列表。

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取