Slim Framework バージョン 1.6.0

Slim Framework 1.6.0 を安定版ブランチにリリースしました。これはメジャーリリースであり、Rack プロトコルに基づいた新しいフレームワークアーキテクチャが含まれています。

新機能

新しい Rack アーキテクチャ

Slim Framework 1.6.0 は Rack プロトコルの派生物を実装しています。インスタンス化されると、Slim アプリケーションは $_SERVER スーパーグローバルから一連の変数を Slim_Environment のインスタンスに抽出します。Slim アプリケーションは、これらの環境変数を使用して現在の HTTP リクエストをルーティングし、適切な HTTP レスポンスを返します。

詳細を読む

新しいアプリケーションミドルウェア

Slim アプリケーションは、アプリケーション全体のミドルウェアを使用して、Slim アプリケーションが実行される前および/または後に、アプリケーション環境、リクエスト、またはレスポンスを検査または変更できるようになりました。ミドルウェアは、Slim Framework に非常に強力な追加機能であり、アプリケーションに多くの新しい可能性を開きます。

詳細を読む

改善されたリクエストインターフェース

Slim_Http_Request オブジェクトのインターフェースが改善され、開発者は現在の HTTP リクエストをより簡単に検査できるようになりました。

詳細を読む

改善されたレスポンスインターフェース

Slim_Http_Response オブジェクトのインターフェースが改善され、開発者は HTTP レスポンスをより簡単に準備できるようになりました。

詳細を読む

改善されたセッション処理

以前のバージョンとは異なり、Slim Framework 1.6.0 は単独でネイティブ PHP セッションを開始しません。ネイティブ PHP セッションが必要な場合は、Slim アプリケーションをインスタンス化する前に、ネイティブ PHP セッションを構成して開始する必要があります。多くのアプリケーション開発者は、Slim の以前のセッション実装があまりにも独断的であると感じていました。1.6.0 の新しい実装では、より少ない前提でより多くの構成が可能になります。

Slim_Middleware_SessionCookie ミドルウェアを使用して、以前のバージョンの Slim Framework と同様に、署名付きの暗号化されたセッションデータを HTTP クッキーに永続化できます。

詳細を読む

Slim Framework 1.6.0 は、PHP のネイティブ setcookie() メソッドを使用しなくなりました。代わりに、Slim Framework 1.6.0 は、レスポンスオブジェクトのヘッダーにクッキーを構築して保存します。これにより、アプリケーション開発者は、HTTP レスポンスがクライアントに返される前に、アプリケーションミドルウェアでクッキーデータを検査および調整できます。

改善されたロギング

Slim Framework 1.6.0 では、ログデータを適切な出力先(ファイル、データベース、Twitter、またはリモート Web サービスなど)に送信するカスタムログライターを使用して、より柔軟なロギングが可能になります。

詳細を読む

改善されたテストカバレッジ

すべての新しいリリースと同様に、Slim Framework 1.6.0 には、改善された PHPUnit テストカバレッジと更新された phpDocumentor API ドキュメントが含まれています。

その他の追加機能

Slim Framework 1.6.0 には、以下を含む、さらに多くの小さな追加機能が含まれています。

  • X-HTTP-Method-Override リクエストヘッダーのサポート
  • 改善された HTTP キャッシュのための新しいアプリケーション expires() メソッド
  • gzip 圧縮を使用する Web サーバーとの互換性の向上
  • Composer パッケージマネージャーとの互換性

アップグレード方法

Slim Framework 1.6.0 は、以前のバージョンからのシームレスなアップグレードであるはずです。古いアプリケーションをアップグレードする際の潜在的な問題は、セッションとロギングのみです。

セッション

上記のように、Slim Framework 1.6.0 は単独でネイティブ PHP セッションを開始しません。現在のアプリケーションがネイティブ PHP セッションに依存している場合は、アプリケーションをインスタンス化する前に、PHP セッションを構成して開始する必要があります。

署名付きの暗号化された HTTP クッキーにセッションデータを永続化し続けたい場合は、Slim_Middleware_SessionCookie ミドルウェアをアプリケーションに追加する必要があります。

ロギング

Slim Framework 1.6.0 は、カスタムログライターを使用して更新されたロギング実装を提供します。アプリケーションのロガーを更新して、ログデータが同じ場所に送信され続けるようにする必要がある場合があります。デフォルトでは、Slim Framework 1.6.0 はログメッセージを STDERR に送信します。

お楽しみください!