system
高木 祐玖

2021.9.13システム開発 

システムエンジニア

高木 祐玖

2021年8月1日「マリンロード」は「インソースマーケティングデザイン」へ社名を変更いたしました

[CakePHP4] クエリ文字列を取得する方法

今回はブログ等のURLでよく見かける「/posts/index?page=1&sort=mounth」のような
クエリ文字列(URLに含まれている情報)を取得する方法をご紹介したいと思います。

Controllerを作成する

まず、src/Controller/の中にTestController.phpを作成します。
次に、クエリ文字列を取得するために、getQuery() メソッドを記述します。

<?php
  namespace App\Controller;
  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に関する記事を投稿しますので、お楽しみに。

現役ウェブ解析士が教えるWebサイトの読み解き方 イメージ
システム開発サービスはこちら
ページTOPへ