2021.09.13 システム
[CakePHP4] クエリ文字列を取得する方法
今回はブログ等のURLでよく見かける「/posts/index?page=1&sort=mounth」のような
クエリ文字列(URLに含まれている情報)を取得する方法をご紹介したいと思います。
Controllerを作成する
まず、src/Controller/の中にTestController.phpを作成します。
次に、クエリ文字列を取得するために、getQuery() メソッドを記述します。
<?php namespace AppController; class TestController extends AppController{ function index(){ $page = $this->request->getQuery('page'); echo 'クエリ文字列'.$page; return; } }
動作確認
ブラウザを開き、http://ドメイン名/testを入力しアクセスします。
次に、URLをhttp://ドメイン名/test?page=77pageと書き換え、リロードを行います。
下記のようにURLから取得したクエリ文字列が表示されていれば成功です。
クエリ文字列は77page
クエリ文字列以外にも、getParam()を使えばcontroller名やaction名も取得することが可能です。
// 現在使用しているcontroller名を取得 $controller=$this->request->getParam('controller'); // 現在使用しているaction名を取得 $action=$this->request->getParam('action');
いかがだったでしょうか?
次回もCakePHP4に関する記事を投稿しますので、お楽しみに。