Home > CakePHP | PHP > CakePHP Controller#Object()が外部から呼べる

CakePHP Controller#Object()が外部から呼べる

この記事の所要時間: 055

以前あったControllerのメソッドが外部から呼べてしまう問題ですが、フレームワークが修正されて問題は解決したと思っていました。

しかし、よくよく見てみるとObject()だけはまだ呼べる状態になっています。

下のようなコントローラに[http://example.com/hoge/Object]でアクセスすると”**construct”が2回表示されます。

[app/controller/hoge_controller.php]

<?php
class HogeController extends AppController {
  var $uses = array();

  function __construct() {
    parent::__construct();
    var_dump("**construct");
  }
}
?>

コンストラクタを継承してHogeControllerでややこしい事をしなければ、まあ2回呼ばれても良いかもしれませんが、やはり外から呼べる状態は気持ち悪いです。

こういうのを考えるとURLからコントローラとアクションが自動的にマッピングされるより、routes.phpできっちりマッピングしておいた方が安全かなあと思ったりします。(まあ利便性とのバランスですが)

いちおうチケットは出しておいたので修正されるのを待ちたいと思います。

Pocket

follow us in feedly

トラックバック:0

このエントリーのトラックバックURL
http://www.1x1.jp/blog/2007/05/cakephp_controller_object.html/trackback
Listed below are links to weblogs that reference
CakePHP Controller#Object()が外部から呼べる from Shin x blog

Home > CakePHP | PHP > CakePHP Controller#Object()が外部から呼べる

検索
フィード
メタ情報

Return to page top