PHPのフレームワークであるSlim Frameworkで、ブラウザからcsv/tsvなどのファイルをダウンロードする方法です。
```language-php
$app->get('/tsv_test', function (Request $request, Response $response, array $args) {
// TSVデータを作成す...
PHPのSlim3フレームワークでslim/twig-viewパッケージを使用時、*.twigのビューファイルを変更してもブラウザで表示したときに変更内容が反映されないときがあります。これは、twigがビューのファイルを*.phpに変換した結果をキャッシュしており、元の*.tw...
PHPのSlim3フレームワークで、slim/twig-viewパッケージを使用時に、*.twigファイルで`{{ dump(value)}}`のようにdump関数を使おうとすると、下記のエラーになる場合があります。
```language-bash
Type: Twig_Error_Syntax
Message: Unknown "dump" fu...
PHPでルーティングを行うパッケージであるnikic/FastRouteパッケージを利用して、controller-actionスタイルのルーティングを行う方法を説明します。
nikic/FastRouteパッケージは、PHP本体の開発者であるNikitaさんが開発していて、Slim3 Framework...
PHPのマイクロフレームワークであるSlim Frameworkのバージョン3.9.0が、2017/11/04にリリースされました。バージョン3.9.0での変更点は主に不具合修正で、以下のような修正が行われています。
- Requestオブジェクトに任意のHTTPメソッド名を使用でき...
PHPでSlim3フレームワークを使ったプロジェクトを作る場合、プロジェクト構成のひな型としてslim/slim-skeletonパッケージがあります。今回は、プロジェクトひな型として、slim-skeletonが役立つか評価したい人のため、プロジェクトを構成している全ファイ...
PHPのSlim3 Frameworkでcookieを管理するためのクラスです。
stackoverflowにあったコードを元に一部改修してます。
https://stackoverflow.com/questions/35257522/slim-3-framework-cookies
```language-php
PHPのSlim3 Frameworkでは、以下のようなコードでgetリクエストが走った時のコールバック処理内で、DIコンテナへアクセスすることができます。
```language-php
$app = new \Slim\App();
// myServiceをDIコンテナを取得
$container = $app->getCont...
PHPのマイクロフレームワークであるSlim3 Frameworkでは、PimpleパッケージベースにしたDIコンテナが用意されています。
今回はSlim3で、DIコンテナからインスタンス取得時に、呼び元からコンストラクタ引数を渡す方法を説明します。
## 通常のDI...
Slim3 FrameworkでPDOを使用したDBアクセスを行いたい場合があります。
Slim3では、システム全体で使用するオブジェクトの管理をDIコンテナに任せることができる為、DIコンテナ経由でPDOオブジェクトの取得を行う方がスマートです。
下記は、PDOオブ...
PHPのマイクロフレームワークである、Slim3 Frameworkでクライアントから渡された、GET/POSTパラメータを受け取る方法はいくつかの方法があります。
まずは以下の方法で、すべてのパラメータを配列として取得できます。
```language-php
$paramValue ...
Slim Framworkを使ったサンプルコードをネットなどで探してきた再、$appオブジェクトを作成する際に、下記のようなコードが例示されている場合があります。
```language-php
PHPのSlim3 Frameworkで302リダイレクトを行いたい場合があります。
Slim3でリダイレクトを行うときは、下記のように$response->withRedirect()メソッドを利用すればよいです。
``` language-php
use \Psr\Http\Message\ServerRequestInterface as Re...
Slim Frameworkで応答データをjsonp形式で返したい場合は、下記のようにすればよいです。jsonpのcallback関数名は、通常クライアントから指定してもらうことが多いです。
```language-php
$app->get('/', function (Request $request, Response $respons...
SlimFrameworkでは、スクリプトの途中でエラーが出たとき以下のメッセージを画面に表示するだけで、エラーのスタックトレースなど詳細を画面に表示しません。
```language-bash
Slim Application Error
A website error has occurred. Sorry for the te...
PHPのマイクロフレームワークでであるSlim Frameworkでは、標準ではViewに相当するコンポーネントが用意されていません。マイクロなだけに、ルーティング処理中でViewの出力まで行っても良いのですが、最低限のMVCによるViewの分離ぐらいは行いたい場合が...
PHPを使ったプログラムで、簡単なWebAPIを実装したい場合があります。
小さなWebAPIサーバなど、シンプルなサービスを実装する時にSlim Frameworkのようなマイクロフレームワークは助けになりますが、クライアントの認証がネックになることがあります。...
PHPのSlim Frameworkでは、$app->get($pattern, $callable)や、$app->post($pattern, $callable)でそれぞれGET/POSTリクエストが来た時の処理を定義することができます。
今回は、複数の種類のリクエストを一度に定義する方法をいくつか紹介します。
(...
PHPで利用できるマイクロフレームワークの一つに、Slim Frameworkというものがあります。今回は、Slim Frameworkで、302リダイレクトを行う方法を説明します。
Slim Frameworkでは、HTTPのリクエスト、レスポンスの情報をPSR-7の規格に準じた形で実装し...