🛫

FlightPHPを徹底解説!

に公開

PHPで軽量なWebアプリケーションを作ってみたいけど、「Laravelはちょっと重い」「もっとシンプルなフレームワークがいい」という方にピッタリなのが FlightPHP です。

この記事では、FlightPHPの基本から実際の使い方までを、初心者にもわかりやすく丁寧に解説していきます!


❓ FlightPHPとは...

FlightPHP は、PHPで作られたマイクロフレームワークです。
軽量でシンプル、学習コストも低いため、小〜中規模のWebアプリケーションやAPIに最適です。

特徴は以下の通りです:

  • ✅ 軽量で高速
  • ✅ シンプルなルーティング
  • ✅ 組み込み機能だけで手軽に開発
  • ✅ Composerで簡単に導入できる
  • ✅ 公式から日本語ドキュメントが用意されている

公式ドキュメント(日本語)

https://docs.flightphp.com/ja/v3/


🛠 FlightPHPのインストール方法

まずはFlightPHPをインストールしてみましょう。
今回はComposerを利用したインストール方法をご紹介します。

1. プロジェクトディレクトリを作成

今回はflight-appという名前のディレクトリを作成します。

mkdir flight-app
cd flight-app

2. ComposerにてFlightPHPをインストール

composer require flightphp/core

☝️ 使ってみよう!

文字列を表示するように定義をする

index.php
<?php

require 'vendor/autoload.php';

Flight::route('/', function(){
    echo 'Hello, FlightPHP!';
});

Flight::start();

?>

PHPのビルトインサーバで起動

php -S localhost:8080

ブラウザで http://localhost:8080 にアクセスすると「Hello, FlightPHP!」と表示されます。


🚏 基本的なルーティング

FlightPHPでは、Flight::route()を使ってURLと処理を紐づけます。

各リクエストのルーティング

下記のように定義し、/helloにアクセスすると「こんにちは、世界!」と表示されます。

Flight::route('/hello', function(){
    echo 'こんにちは、世界!';
});

また、以下のように定義することで、GETやPOSTといったHTTPメソッドごとに処理を分けることができます。

Flight::route('GET /check-method', function(){
    echo 'GETメソッドでリクエストされたよ!';
});

Flight::route('POST /check-method', function(){
    echo 'POSTメソッドでリクエストされたよ!';
});

URLパラメータの取得

下記のように定義し、/hello/Taroにアクセスすると「こんにちは、Taroさん!」と表示されます。

Flight::route('/hello/@name', function($name){
    echo "こんにちは、{$name}さん!";
});

POSTデータの取得

フォームなどからのPOSTデータも簡単に受け取れます。
Flight::request()->dataを使って、POSTされたデータを取得できます。

Flight::route('POST /submit', function(){
    $data = Flight::request()->data;
    echo "送信された名前: " . $data['name'];
});

🧰 その他の便利な機能

JSONレスポンスを返す

JSON形式でデータを返すこともワンライナーでOK!

Flight::route('/api/user', function(){
    Flight::json(['name' => 'Taro', 'age' => 20]);
});

ミドルウェア的なフィルター処理

リクエストの前後に処理を差し込むこともできます。

Flight::before('start', function(&$params, &$output){
    header('X-Powered-By: FlightPHP');
});

📚 まとめ

FlightPHPは、以下のような人にオススメです:

  • 「Laravelほど多機能じゃなくていい」
  • 「とにかく手軽に始めたい」
  • 「学習コストの低いPHPフレームワークを探している」

PHPでAPIや小規模なWebサービスを作るなら、FlightPHPは最高の選択肢のひとつです。
ぜひ、あなたのプロジェクトにも取り入れてみてください!

この記事が「FlightPHPに入門したい!」という方の参考になれば幸いです!

Discussion