比较cakephp模型中的值

比较cakephp模型中的值,php,cakephp,model,cakephp-2.0,cakephp-2.4,Php,Cakephp,Model,Cakephp 2.0,Cakephp 2.4,对不起,我对cakephp还是新手。 我想做一个自定义函数来比较两个值,但我想把这些值作为参数发送给函数 这是我的模型: <?php App::uses('AppModel', 'Model'); class PayGrade extends AppModel { public $displayField = 'id'; public $validate = array( 'id' => array( 'notEmpty'

对不起,我对cakephp还是新手。 我想做一个自定义函数来比较两个值,但我想把这些值作为参数发送给函数

这是我的模型:

<?php
     App::uses('AppModel', 'Model');
    class PayGrade extends AppModel 
    {
   public $displayField = 'id';


public $validate = array(
    'id' => array(
        'notEmpty' => array(
            'rule' => array('notEmpty'),
        ),
        'uuid' => array(
            'rule' => array('uuid'),
        ),
        'numeric' => array(
            'rule' => array('numeric'),
        ),
    ),
    'Salary_max' => array(
        'numeric' => array(
            'rule' => array('numeric'),
        ),
        'notEmpty' => array(
            'rule' => array('notEmpty'),
        ),
    ),
    'Salary_min' => array(
        'numeric' => array(
            'rule' => array('numeric'),
        ),
        'notEmpty' => array(
            'rule' => array('notEmpty'),
        ),
    ),
    'Currency' => array(
        'notEmpty' => array(
            'rule' => array('notEmpty'),
        ),
    ),
    'eval_pts_from' => array(
        'numeric' => array(
            'rule' => array('numeric'),
        ),
        'notEmpty' => array(
            'rule' => array('notEmpty'),
        ),
    ),
    'eval_pts_to' => array(
        'numeric' => array(
            'rule' => array('numeric'),
        ),
        'notEmpty' => array(
            'rule' => array('notEmpty'),
        ),
    ),
);
    function compareVals($min,$max)
    {
        if($min >= $max)
        {
            return false;
        }
        else 
        {
            return true;
        }
    }
public $hasMany = array(
    'Jobs_levels' => array(
        'className' => 'Jobs_levels',
        'foreignKey' => 'Pay_grades_id',
        'dependent' => false,
        'conditions' => '',
        'fields' => '',
        'order' => '',
        'limit' => '',
        'offset' => '',
        'exclusive' => '',
        'finderQuery' => '',
        'counterQuery' => ''
    )
);
}

我想比较eval_pts_to与eval_pts_from以及Salary_max与Salary_min。 我搜索了一些函数,但找到了一些从函数内部调用变量的函数,这意味着我必须创建两个函数,一个用于eval_points,另一个用于salary


提前感谢您

一些代码可以解释您:

public function validationComparisonField($check, $other_field) {
    if ($this->data[$this->alias][$other_field] > $check[key($check)])) {
        return true; // passed
    }

    return false; // not passed
}
您始终可以从$this->data获取数据

验证规则:

'Salary_max' => array(
        'numeric' => array(
            'rule' => array('validationComparisonField', 'salary_min'),
        ),

不清楚..你什么时候想要这个比较?我想加上。。我不知道我是如何共享一个通用函数来比较要在这里验证的字段的:您能写下我将如何将它添加到这些字段中:'eval_pts_from'=>array'numeric'=>array'rule'=>array'numeric'、'notEmpty'=>array'rule'=>array'notEmpty'、'eval_pts_to'=>array'numeric'=>,,“notEmpty”=>array'rule'=>array'notEmpty'=>array'max'=>array'numeric'=>array'rule'=>array'numeric'、'notEmpty'=>array'rule'=>array'numeric'=>array'rule'=>array'notEmpty'>;无需将其包装在if语句中,因为它本身返回true或false。