指定安裝 phalcon 的版本

其實是因為這幾天phalcon 4 正式 release,然後自己不小心讓系統全部更新,然後就爆炸了,所以只好來降版本。

整個phalcon 安裝檔的 repository都在同樣地方,如果現在沒有特別指定的話,php7.2(含)以上版本安裝 phalcon 會裝上 phalcon 4.0。但是手邊正在做的幾個東西都還在用 phalcon 3.x,兩者差異其實沒有太多,但是有些設定會不太一樣,所以 phalcon 3.x 的程式直接在 4.0 上跑會噴error,比方像是這樣

[Fri Dec 27 01:55:57.890865 2019] [php7:error] [pid 874] [client 127.0.0.1:36336] PHP Fatal error:  Uncaught Error: Class 'Phalcon\\Di\\FactoryDefault' not found in /www/super/public/index.php:15\nStack trace:\n#0 {main}\n  thrown in /www/super/public/index.php on line 15, referer: http://localhost/super/cnx/view

所以只好降版本,在官方的packagecloud上看到,只要在 apt-get install 時指定即可。

$ sudo apt-get install php7.2-phalcon=3.4.5-1+php7.2

話說回來,距離開始用 phalcon 3 原來已經超過三年了…