$modelo->test()

La función test() sirve para verificar los valores de las propiedades o columnas del modelo. Devuelve false si se detectan problemas en los valores y true en caso contrario. Por ejemplo, devolverá false si en una columna del modelo se encuentra un valor null, y en la tabla existe una restricción NOT NULL para esa columna. Para ser más claros, la función test() del modelo Cliente devolverá false si el campo cifnif tiene valor NULL, ya que la columna cifnif de la tabla no puede contener NULL.

¿Cuándo se ejecuta?

Esta función se ejecuta dentro de la función save() del modelo y se realiza antes de las funciones internas saveInsert() y saveUpdate().

¿Cómo se usa normalmente?

No es habitual llamar a esta función directamente. Normalmente, en nuestros modelos, cuando necesitamos realizar alguna comprobación o corrección sobre los valores, lo hacemos dentro de esta función:

public function test(): bool
{
    // Comprobamos que el codpago solamente tiene letras, números y algunos caracteres especiales
    if ($this->codpago && 1 !== preg_match('/^[A-Z0-9_\+\.\-\s]{1,10}$/i', $this->codpago)) {
        Tools::log()->error('invalid-alphanumeric-code', [
            '%value%' => $this->codpago,
            '%column%' => 'codpago',
            '%min%' => '1',
            '%max%' => '10'
        ]);

        return false;
    }

    return parent::test();
}
Cookies
Usamos cookies en nuestro sitio web para brindarte la experiencia más relevante recordando tus preferencias y visitas repetidas. Al hacer clic en "Aceptar", aceptas el uso de TODAS las cookies necesarias.
Copyright (c) 2013-2025 FacturaScripts
0.40097s

Soporte