為了確保學員在工作坊上課期間可以有充足的時間來進行相關的實作,在課程開始前請學員在當日上課前先在自己的電腦環境中先安裝好 Swoole 相關環境。
Swoole 安裝方式有以下幾種:
MacOS M1 晶片在透過編譯、Pecl 安裝過程中可能會遇到一些問題,優先推薦大家使用 Swoole-Cli 方式進行安裝,此種方式不需要手動安裝 extension 以及不會影響自己機器上的 PHP 環境。
支援 Linux(2.3.32 以上)、FreeBSD、MacOS 三種作業系統,若為 Windows 作業系統請搭配 WSL 環境或是 Cygwin 使用。
注意:若非使用 Swoole-Cli 要特別注意 PHP 版本需要在 8.0 以上。
Laravel Octane requires PHP 8.0+
Swoole-Cli 為官方最新釋出的二進位執行環境,一個 Binary 檔案即包含了 PHP 與 Swoole 環境,不需依賴機器環境上的 PHP 即可使用,為目前最簡單的安裝方式。
下載連結:
解壓縮後將執行檔移到 bin 路徑下
tar zxvf swoole-cli-v5.0.1-macos-x64.tar.xz
mv swoole-cli /usr/local/bin/swoole-cli
chmod +x /usr/local/bin/swoole-cli
Windows 用戶下載下來後執行 swoole-cli 執行檔即可運行
編譯相關需求
先將 Swoole 從 GitHub 上將最新版本的原始碼下載下來 https://github.com/swoole/swoole-src/releases
切換至 Swoole 原始碼的目錄後進行編譯
cd swoole-src
phpize
./configure
make
sudo make install
extension=swoole.so
若不知道自己機器上的 php.ini 檔案位置,可以透過
php --ini
來取得相關資訊。
pecl install swoole
brew tap shivammathur/extensions
brew install shivammathur/extensions/swoole@8.1
若為 M1 晶片的 Mac 機型在編譯 Swoole 時會遇到錯誤,使用
shivammathur/extensions
的 formula 即可正常安裝。
phpswoole/swoole
image 使用docker run --rm phpswoole/swoole "php --ri swoole"
不熟悉 Docker 相關操作的人建議在本機上安裝環境,以利課程順利進行。
php --ri swoole
若是使用 Swoole-Cli 則使用:
swoole-cli --ri swoole
若有正確安裝 Swoole,畫面上會出現:
Swoole => enabled
Author => Swoole Team <team@swoole.com>
Version => 5.0.1
Built => Nov 9 2022 17:27:42
coroutine => enabled with boost asm context
kqueue => enabled
rwlock => enabled
sockets => enabled
openssl => OpenSSL 1.1.1p 21 Jun 2022
dtls => enabled
http2 => enabled
json => enabled
curl-native => enabled
pcre => enabled
c-ares => 1.18.1
zlib => 1.2.11
mysqlnd => enabled
async_redis => enabled
Directive => Local Value => Master Value
swoole.enable_coroutine => On => On
swoole.enable_library => On => On
swoole.enable_preemptive_scheduler => Off => Off
swoole.display_errors => On => On
swoole.use_shortname => On => On
swoole.unixsock_buffer_size => 262144 => 262144