移除 Composer 中不需要的 Polyfill

預設在安裝 Laravel(或其他框架 / Library)時,常常或多或少會一併安裝許多的「Polyfill」。這些 Polyfill 往往是不必要的。本文說明了如何檢視目前已安裝的 Polyfill,以及如何在專案中移除這些 Polyfill。 Polyfill? 什麼是 Polyfill 呢?Polyfill 是一段用來讓程式能使用還未實作或在為安裝特定套件時使用特定功能的一段程式碼。 舉例來說,Symfony 維護了針對各個 PHP 版本中新增函式的 Polyfill。。在 symfony/polyfill-php81 中,提供了 array_is_list 方法,讓我們不需要安裝 PHP 8.1 也能通過 require 這個 Package 來使用該方法。 使用 composer info 來看看我們安裝了哪些 Polyfill 我們可以使用…

Composer 與 Autoload

相信大家都有在用 Composer,但許多初學者只知道 Composer 可以安裝套件,卻不知道為什麼需要用 Composer、以及 Composer 解決了什麼問題。在這篇文章中,我們將會討論 1. Package Manager 是做什麼的? 2. PHP 中的 Autoload 是什麼? 什麼是 Package Manager? Package Manager (套件管理員),從名字上來看,他是用來安裝套件的。大家熟悉的 Package Manager 除了 Composer 外,還有 NPM (node.js)、Homebrew (macOS)、APT (Debian)、DNF (RHEL) 等常見的 Package Manager。 除了安裝你指定的套件外,這些…