administrador.base.orm.rows.filtro_hijo.21.8.0 - gamboamartin/administrador GitHub Wiki
filtro_hijo
Esta función se encarga de aplicar un filtro a un arreglo $filtro basado en el valor de un campo específico $campo_row en un arreglo $row.
Signatura
private function filtro_hijo(string $campo_filtro, string $campo_row, array $filtro, array $row): array
Parámetros
$campo_filtro (string): El nombre del campo en el arreglo $filtro al que se aplicará el filtro. $campo_row (string): El nombre del campo en el arreglo $row del cual se tomará el valor para aplicar el filtro. $filtro (array): El arreglo al que se aplicará el filtro. $row (array): El arreglo del cual se tomará el valor para aplicar el filtro.
Retorna
- array: El arreglo $filtro modificado con el filtro aplicado.
Explicación Detallada
- La función verifica si los campos $campo_row y $campo_filtro están vacíos. Si lo están, devuelve un mensaje de error.
- Si el campo $campo_row no está presente en el arreglo $row, se le asigna un valor vacío.
- El valor del campo $campo_row en el arreglo $row se convierte a una cadena y se asigna al campo $campo_filtro en el arreglo $filtro.
- Retorna el arreglo $filtro modificado con el filtro aplicado.
Ejemplos
$objeto = new rows();
// Definir arreglos
$filtro = ['tipo' => ''];
$row = ['tipo' => 'texto', 'otro_campo' => 'valor'];
// Aplicar filtro
$resultado = $objeto->filtro_hijo('tipo', 'tipo', $filtro, $row);
Código de la Función
private function filtro_hijo(string $campo_filtro, string $campo_row, array $filtro, array $row):array{
if($campo_row===''){
return $this->error->error(mensaje: "Error campo vacio",data: $campo_row, es_final: true);
}
if($campo_filtro===''){
return $this->error->error(mensaje: "Error filtro",data: $campo_filtro, es_final: true);
}
if(!isset($row[$campo_row])){
$row[$campo_row] = '';
}
$filtro[$campo_filtro] = (string)$row[$campo_row];
return $filtro;
}