src.where.data_filtro_fecha - gamboamartin/where GitHub Wiki
data_filtro_fecha
La función data_filtro_fecha
es una función privada que valida un filtro de fechas en un array y devuelve un objeto stdClass
con los campos del filtro si la validación es exitosa. Esta función se encarga de verificar que el array contenga las claves requeridas (campo_1
, campo_2
, y fecha
) y que la fecha sea válida.
Signatura
private function data_filtro_fecha(array $fil_fecha): stdClass|array
Parámetros
array $fil_fecha
:
Un array asociativo que debe contener las clavescampo_1
,campo_2
, yfecha
. La clavefecha
debe estar asociada a una fecha válida.
Retorna
stdClass|array
:
Retorna un objetostdClass
con los valorescampo_1
,campo_2
, yfecha
si la validación es exitosa. En caso de error, retorna un array de error generado por$this->error->error()
.
Explicación Detallada
-
Validación del filtro de fecha:
- La función llama a
valida_data_filtro_fecha()
para validar que el array$fil_fecha
contenga las claves requeridas y que el valor defecha
sea una fecha válida. - Si la validación falla, se genera un mensaje de error y se retorna un array con el mensaje de error.
- La función llama a
-
Extracción de datos:
- Si la validación es exitosa, la función extrae los valores asociados a las claves
campo_1
,campo_2
, yfecha
del array$fil_fecha
.
- Si la validación es exitosa, la función extrae los valores asociados a las claves
-
Construcción del objeto:
- La función crea un objeto
stdClass
y asigna los valores decampo_1
,campo_2
, yfecha
a sus respectivas propiedades.
- La función crea un objeto
-
Retorno del objeto:
- La función retorna el objeto
stdClass
que contiene los datos del filtro de fecha.
- La función retorna el objeto
Ejemplos
$fil_fecha = [
'campo_1' => 'id_producto',
'campo_2' => 'precio',
'fecha' => '2023-08-15'
];
$resultado = $this->data_filtro_fecha($fil_fecha);
// Resultado esperado:
// Objeto stdClass con los campos:
// $resultado->campo_1 = 'id_producto';
// $resultado->campo_2 = 'precio';
// $resultado->fecha = '2023-08-15';
Código de la Función
private function data_filtro_fecha(array $fil_fecha): stdClass|array
{
$valida = $this->valida_data_filtro_fecha(fil_fecha: $fil_fecha);
if(errores::$error){
return $this->error->error(mensaje: 'Error al validar fecha',data: $valida);
}
$campo_1 = $fil_fecha['campo_1'];
$campo_2 = $fil_fecha['campo_2'];
$fecha = $fil_fecha['fecha'];
$data = new stdClass();
$data->campo_1 = $campo_1;
$data->campo_2 = $campo_2;
$data->fecha = $fecha;
return $data;
}