php文法設計 數組為什麼不採用普遍的{}大括弧呢? 其它的 程式設計語言 在數組初始值 都是 用大括弧{} 包含的。

來源:互聯網
上載者:User
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 的回答:

PHP之前很多年數組的表示形式一直是 array(),而 [ ] 方式是在PHP5.4中才引入的。如果你寫過一段時間PHP,你就會發現用 [ ] 表示數組也是你內心真正想的一件事,這是順其自然的。

還有就是array()寫起來真是太TM費勁了好嗎

PHP的數組根本就不是傳統的C數組,而是 map、鏈表、堆、棧......

自 5.4 起可以使用短數組定義文法,用 [] 替代 array()。
程式設計語言一般都是用[]表示數組或隊列,用{}表示字典或集合。
其實在php中數組可以表示字典,因為是索引值對。所以題主才想到了用{}吧

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

[] 在 PHP5.4 已經開始支援,並且不是所以的語言定義數組都用 {},比如 JS

php的數組實際上是字典了 所以不能拿其他語言的數組 要拿字典來比較

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

看起來新出現的語言傾向於使用中括弧
而php5.4是較新的 所以使用中括弧

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.