概要
PHPで非同期処理の実装を行いたかった。8.1で導入されたFibersが組み込まれており、使用感がよさそうだったAMPHPを使える環境を用意してみたのでまとめます。
環境構築
dockerでローカルのコンテナ内にミニマムのphp動作環境を作ります。
dockerfile
phpとcomposerをいれる。
# syntax=docker/dockerfile:1
FROM php:8.3.8-alpine
WORKDIR /app
# composer install
COPY --from=composer /usr/bin/composer /usr/bin/composer
docker-compose.yml
version: "3.9"
services:
app:
build: ./
stdin_open: true
tty: true
volumes:
- .:/var/www/html
ports:
- 8011:80
インストールと確認
docker compose up -d
docker compose exec app bash //コンテナに入る
php -v
composer -v
ok!
AMPHPのインストールと実行
公式通りにいきます。
composer require amphp/amp
composer require revolt/event-loop
まんまコードをコピーして実行
doc通りに表示されました!非同期で遅延表示されるのが確認できます。
今回のソース
こちらにまとめておきました。
最後に運動通信社について
運動通信社は「日本を世界が憧れるスポーツ大国にする」というビジョンを達成するべく、一緒に働く仲間を募集しています!
PMやアプリエンジニア、Webエンジニアなど色んな職種を募集しておりカジュアル面談大歓迎なので是非採用フォームよりご連絡ください!
ぜひ一緒に、自分たちも世の中もワクワクするサービスを作りましょう!