CakePHP hiddenフィールドでパラメータを引き継ぐ

複雑なフォームのパラメータを持ちまわりたかったので、cakephperの日記(CakePHP, MongoDB, Lithium)さんのよくある確認画面でのhiddenデータの持ち回り ver2を改造させていただき無制限でネストしてパラメータに押し込む用にしてみた。

class FormhiddenHelper extends AppHelper {
    var $helpers = array('Form'); 

    function hiddenVars() {
        $ret = "";
        $keyStack = array();
        $this->_hiddenVarsNestParse($this->data, $keyStack, $ret);
        return $ret;
    }

    function _hiddenVarsNestParse($data, &$keyStack, &$ret) {
        if (is_array($data)) {
            foreach ($data as $key => $val) {
                array_push($keyStack, $key);
                $this->_hiddenVarsNestParse($val, $keyStack, $ret);
                array_pop($keyStack);
            }
        } else {
            $ret .= $this->Form->hidden(implode('.' ,$keyStack)) . "\n";
        }
    }
}

Trackback URL for this post:

http://www.mrk.jp/trackback/605

コメント

テスト

テスト

やばい、便利すぐる! ゆとりになるw

やばい、便利すぐる!
ゆとりになるw

新しいコメントの投稿

このフィールドの内容は非公開にされ、公表されることはありません。
  • ウェブページアドレスとメールアドレスは、自動的にハイパーリンクに変換されます。
  • 使用できるHTMLタグ: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • 行と段落は自動的に折り返されます。

書式オプションに関するより詳しい情報...