首页 > 后端开发 > php教程 > php语法设计 数组为什么不采用普遍的{}大括号呢? 其它的 编程语言 在数组初始值 都是 用大括号{} 包含的。

php语法设计 数组为什么不采用普遍的{}大括号呢? 其它的 编程语言 在数组初始值 都是 用大括号{} 包含的。

WBOY
发布: 2016-06-06 20:44:37
原创
1390 人浏览过

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原来只能用 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的这个数据结构又是混合型的, 大括号嘛,最大的括号嘛,,哈哈,,什么都能括住,,大括号 { } 这个符号图形感觉也符合视觉需求呀。

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

补充 @yetone 的回答:

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

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

<code>PHP的数组根本就不是传统的C数组,而是 map、链表、堆、栈......
</code>
登录后复制

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

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

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

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

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

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

相关标签:
php
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板