cakephp インクリメント、デクリメント

2013年1月2日更新 view: 53 view

update all で一気に インクリメント

ng_list に メールアドレスの配列。
Maga に お好きなモデル。

たったこれだけでもインクリメントできる。

$this->Maga->updateAll(array('Maga.ngcount' => 'Maga.ngcount + 1'), array('User.email' => $ng_list));

指定したフィールドの値を増減

ビヘイビアとかも出ているみたいだけど、よく使うので app_model.php に書いてしまおう。

・app_model.php

/*
        インクリメント
        @params int $id 指定したIDを更新
        @params str $field フィールド名
        @params int $int 増減したい数値
                            ex. 3増やす 3 , 10減らす -10
    */
    function increment($id,$field,$int = 1)
    {
        $this->query("UPDATE " . $this->tablePrefix.$this->useTable . " SET " . $field . " = " . $field . " + ".$int." WHERE id=" . $id);
    }
スポンサードリンク

あとは好きなモデルから

$this->Model->increment(1,'pointfield',-50);

などとやればインクリメント、デクリメントをすることが可能。

スポンサードリンク

関連記事

関連カテゴリ

コロ助

web関連の記事や制作系の記事をどんどんまとめていきます。 宜しくお願いします!

ピックアップ

パソコン・ソフトウェア ランキング

12月15日 ( 土 ) にアクセスが多かった記事はこちら!