一、背景
前段時間把Mac系統重灌了,PHP的一些擴充套件都沒了,昨天需要除錯一個swoole開發的專案,發現命令列中的PHP是系統自帶的,如果安裝swoole擴充套件很不方便;需要自己手動去下載swoole的原始碼,然後去編譯swoole的原始碼,並自己配置,整個過程非常繁瑣;
我記得之前用brew安裝的PHP,再使用pecl很方便就可以安裝swoole,於是我把自帶的PHP解除安裝然後重新使用brew安裝,並且安裝了pecl,在通過pecl安裝了swoole擴充套件,把這個安裝過程記錄下來,方便下次使用吧
二、操作概要
- 解除安裝自帶軟體
- 重新安裝軟體
- 驗證swoole擴充套件
三、解除安裝自帶軟體
之前Mac系統升級到10.15 catalina 版本,發現在解除安裝自帶PHP的時候提示Read-only file system
,網上找了一下解決方法是需要關閉系統的sip
,然後才可以刪除一些檔案,執行的命令如下所示
sudo mount -uw /
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到命令已經執行成功,接著我們就可以刪除自帶的PHP,我們首先要找出自帶PHP的位置,檢視PHP位置命令如下所示
which php
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到返回了一個PHP的路徑,我們將它刪除即可,刪除自帶的PHP的命令如下所示
sudo rm -rf /usr/local/bin/php
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到rm
命令沒有提示異常,說明刪除自帶的PHP已經成功。
為了防止我們之前使用brew安裝過老版本的PHP,我們也嘗試解除安裝brew安裝的PHP版本,解除安裝brew安裝的PHP老版本命令如下所示
這一步驟不是必須的,但為了防止安裝過程當中產生意外問題,所以可以的話就解除安裝,不解除安裝也可以直接跳到安裝pecl步驟中
brew uninstall php
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到已經成功解除安裝了brew安裝的PHP版本
四、重新安裝
我們使用brew命令來安裝PHP的新版本,brew本身也是需要安裝的,但相信大家已經安裝過了,使用brew安裝php命令如下所示
brew install php
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到安裝的PHP版本為7.3,也顯示了PHP的安裝位置,說明我們已經安裝成功了。
接下來我們安裝pecl,首先需要去php的官網下載pecl的安裝包,執行命令如下所示
wget http://pear.php.net/go-pear.phar
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到已經將安裝包下載完成,接下來我們使用PHP執行此安裝包即可,執行命令如下所示
sudo php go-pear.phar
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到pecl已經安裝完成,現在我們就可以使用pecl安裝swoole了,執行命令如下所示
pecl install swoole
這條命令會有一個編譯的過程,執行的時間有點長,在命令執行之後,返回的資訊如下圖所示
在上圖中可以看到已經執行成功,並且自動將swoole擴充套件安裝到了PHP的擴充套件目錄,並新增到了配置檔案當中。
五、驗證swoole擴充套件
在swoole安裝完成之後,我們可以通過下面兩種方式來驗證安裝的可用性,首先是通過檢視php安裝的擴充套件模組命令,看看是否顯示了swoole,執行命令如下所示
php -m
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到返回了swoole,說明php安裝了swoole模組,我們接著找一個依賴swoole的專案,我這裡有一個用laravel開發的專案需要一來到swoole,啟動命令如下所示
php artisan laravels start
命令執行之後,返回的資訊如下圖所示
在上圖中可以看到顯示了PHP和swoole的版本資訊,到此說明我們整個安裝過程已經完成了
六、 圖書推薦
如果對筆者的實踐文章較為感興趣,可以關注筆者出版社《PHP Web安全開發實戰》,現已在各大平臺上架銷售,封面如下圖所示
作者:湯青松
微信:songboy8888
日期:2019-12-03