CakePHP中的转义字段数组

CakePHP中的转义字段数组,php,security,cakephp,model,Php,Security,Cakephp,Model,我目前有: $subQuery = $dbo->buildStatement( array( 'fields' => array( "CASE WHEN Application.program_type_id = 3 AND Application.program_type_id

我目前有:

$subQuery = $dbo->buildStatement(
        array(
            'fields' => array(
                "CASE
                    WHEN
                        Application.program_type_id = 3
                        AND Application.program_type_id IS NOT NULL
                        THEN {$keys['program_type_id_program_type_id']}
                        ELSE 0
                END as program_type_score,
                CASE
                    WHEN
                        Application.priority_subject_area_id = 1
                        AND Application.priority_subject_area_id IS NOT NULL
                        THEN {$keys['priority_subject_area_id_priority_subject_area_id']}
                        ELSE 0
                END as priority_subject_area_priority_subject_area_score,
                User.*"
            ),
            'table' => $dbo->fullTableName($this),
            'alias' => 'User',
            'limit' => null,
            'offset' => null,
            'joins' => $joins,
            'conditions' => array(
                'Application.state' => 'accepted',
                'Role.role' => 'mentor'
            ),
            'order' => null,
            'group' => null
        ),
        $this->User
    );
我需要从以下内容更改案例陈述:

CASE
                        WHEN
                            Application.program_type_id = 3
                            AND Application.program_type_id IS NOT NULL
                            THEN {$keys['program_type_id_program_type_id']}
                            ELSE 0
                    END as program_type_score
为此:

CASE
                        WHEN
                            Application.program_type_id = $user['User']['value']
                            AND Application.program_type_id IS NOT NULL
                            THEN {$keys['program_type_id_program_type_id']}
                            ELSE 0
                    END as program_type_score

如何转义$user['user']['value']?但是,它已经被弃用了。

我在php中使用单引号,因此我将使用以下方法:

'CASE
                    WHEN
                        Application.program_type_id = '.$user['User']['value'].'
                        AND Application.program_type_id IS NOT NULL
                        THEN {$keys['program_type_id_program_type_id']'}
                        ELSE 0
                END as program_type_score'
enter code here
你应该完成

我喜欢单引号的原因之一。有时工作可能会更多,但通常不担心逃避。至少在很长一段时间内,您不会使用PHP变量将HTML与Javascript混合使用。然后它总是变得一团糟


希望这能有所帮助。

似乎CakePHP在
find()
方法上自行完成了转义,正如文档所说:

我想你没有明白我的问题。我的问题是像mysql\u real\u escape\u string()功能一样进行转义。