RESTful API のフレームワークとして Slim PHP を使用していますが、これまでのところ素晴らしいです。作業は非常に簡単ですが、答えが見つからない質問が 1 つあります。Slim PHP で URL から GET パラメータを取得するにはどうすればよいですか?
たとえば、次を使用したい場合:
http://api.example.com/dataset/schools?zip=99999&radius=5
月曜日のケース?私はそれを考えすぎていますか?前もって感謝します!
これは、Slim フレームワーク内で非常に簡単に実行できます。次を使用できます。
$paramValue = $app->request()->params('paramName');
ここの $app は Slim インスタンスです。
または、より具体的にしたい場合
//GET パラメータ
$paramValue = $app->request()->get('paramName');
//POST パラメータ
$paramValue = $app->request()->post('paramName');
特定のルートでそのように使用します
$app->get('/route', function () use ($app) {
$paramValue = $app->request()->params('paramName');
});
request オブジェクトのドキュメントを読むことができます http://docs.slimframework.com/request/variables/
Slim v3以降:
$app->get('/route', function ($request, $response, $args) {
$paramValue = $request->params(''); // equal to $_REQUEST
$paramValue = $request->post(''); // equal to $_POST
$paramValue = $request->get(''); // equal to $_GET
// ...
return $response;
});
Slim PHPについてはよくわかりませんが、URLからパラメーターにアクセスする場合は、次を使用する必要があります。
$_SERVER['QUERY_STRING']
これを解決するために、Googleにたくさんのブログ投稿があります。PHP関数parse_urlを使用することもできます。