Rumah >pembangunan bahagian belakang >tutorial 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的这个数据结构又是混合型的, 大括号嘛,最大的括号嘛,,哈哈,,什么都能括住,,大括号 { } 这个符号图形感觉也符合视觉需求呀。
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是较新的 所以使用中括号