php LINQ 套件安裝使用

LINQ是 Microsoft 在 .Net Framework 3.5 起推出的技術,尤其用在 data collection query 相當的方便。雖然執行速度比起自己用迴圈下去寫要來得慢,但是程式碼可以大幅度減少讓維護變得簡單許多。

因為 LINQ 只能在 .Net Framework 內使用,所以預設 php 自然沒有這東西,不過 github 上有很多人貢獻了各自的版本,例如 YaLinqo, Ginq, Pinq 等等,然後有人有做過 performance test,結果是 YaLinqo: Yet Another LINQ to Objects for PHP表現最佳。

安裝是透過 composer,相當容易

composer require athari/yalinqo

安裝後會通通在 vendor 目錄底下,使用的話只要在開頭加上

require_once BASE_PATH . '/vendor/autoload.php';

然後就可以使用了,例如像這樣

$assets[$i]['catlist'] = from($cattree)->where('$v["categoryid"] == ' . $c["categoryid"])->select('$v["categoryname"]')->first();