與數學集合 (Set) 有關的 PHP 語法

在程式開發中,常常會需要做兩個 Array 之間的比較,其實就是數學中集合 (Set) 的概念,常見的包含聯集 (Union)、交集 (Intersection)、差集 (Difference)。
每一次開發的時候,我都會重新搜尋一下這些集合對應到的是怎樣的語法,所以就決定筆記下來,之後要用到就可以直接拿我的文章來複習了!

聯集 Union

A ∪ B

array_merge 用來將兩個 Array 合併,寫法: array_merge($a, $b)

交集 Intersection

A ∩ B

array_intersect 取得兩個 Array 的交集,寫法:array_intersect($a, $b)

差集 Difference

array_diff 算出兩個 Array 的差集,但要記得:A-B 跟 B-A 的寫法不同,以下搭配圖片解釋。

A-B

A-B 要將 A 放前面,寫法:array_diff($a, $b)

B-A

B-A 則是將 B 放前面,寫法:array_diff($b, $a)

番外篇

圖片我是用 Draw.io 畫的,那時候有點苦惱不知道要怎麼畫出交集的部分 🤣,所以有查了一下資料,發現中間那個很像橢圓形的東西叫做 pointed oval!直接翻譯叫就做「尖橢圓形」哈哈哈!

總之,只要在 Draw.io 的圖案搜尋欄搜尋 pointed oval 就可以找到東西嚕!

留言