administrador.modelado.validaciones.valida_keys_sql.21.24.0 - gamboamartin/administrador GitHub Wiki
valida_keys_sql
Esta función valida la presencia y la integridad de las claves requeridas en un array de datos.
Signatura
final public function valida_keys_sql(array $data, string $tabla): true|array
Parámetros
$data
: Un array que contiene los datos a validar.$tabla
: El nombre de la tabla asociada a los datos.
Retorna
true
: Si todas las claves requeridas están presentes y no están vacías.array
: Si se encuentra algún error, se devuelve un array con información detallada sobre el error.
Explicación Detallada
Paso 1: Descripción de la Función
La función valida_keys_sql valida la presencia y la integridad de las claves requeridas en un array de datos asociado a una tabla en particular.
Paso 2: Parámetros de Entrada
$data: Un array que contiene los datos a validar.
$tabla: El nombre de la tabla asociada a los datos.
Paso 3: Validación de Claves
Verificar si la clave 'key' está presente en el array $data. Si no está presente, devuelve un error.
Verificar si la clave 'enlace' está presente en el array $data. Si no está presente, devuelve un error.
Verificar si la clave 'key_enlace' está presente en el array $data. Si no está presente, devuelve un error.
Limpiar cada clave de espacios en blanco y comprobar que no estén vacías. Si alguna clave está vacía, devuelve un error correspondiente.
Paso 4: Retorno
Si todas las validaciones son exitosas, la función devuelve true.
Si se encuentra algún error durante las validaciones, la función devuelve un array con información detallada sobre el error.
Ejemplos
$data = [
'key' => 'valor1',
'enlace' => 'valor2',
'key_enlace' => 'valor3'
];
$tabla = 'nombre_tabla';
$resultado = valida_keys_sql($data, $tabla);
if ($resultado === true) {
echo "Los datos son válidos.";
} else {
echo "Error: " . $resultado['mensaje'];
// También puedes acceder a $resultado['data'] para obtener más detalles sobre el error.
}
// Ejemplo de array de datos válido
$data_valido = [
'key' => 'valor1',
'enlace' => 'valor2',
'key_enlace' => 'valor3'
];
// Ejemplo de array de datos con una clave faltante
$data_faltante = [
'key' => 'valor1',
'key_enlace' => 'valor3'
];
// Ejemplo de array de datos con una clave vacía
$data_vacia = [
'key' => '',
'enlace' => 'valor2',
'key_enlace' => 'valor3'
];
Código de la Función
final public function valida_keys_sql(array $data, string $tabla): true|array
{
if(!isset($data['key'])){
return $this->error->error(mensaje: 'Error data[key] debe existir en '.$tabla, data: $data, es_final: true);
}
if(!isset($data['enlace'])){
return $this->error->error(mensaje:'Error data[enlace] debe existir',data: $data, es_final: true);
}
if(!isset($data['key_enlace'])){
return $this->error->error(mensaje:'Error data[key_enlace] debe existir',data: $data, es_final: true);
}
$data['key'] = trim($data['key']);
$data['enlace'] = trim($data['enlace']);
$data['key_enlace'] = trim($data['key_enlace']);
if($data['key'] === ''){
return $this->error->error(mensaje:'Error data[key] esta vacio '.$tabla, data:$data, es_final: true);
}
if($data['enlace'] === ''){
return $this->error->error(mensaje:'Error data[enlace] esta vacio '.$tabla, data:$data, es_final: true);
}
if($data['key_enlace'] === ''){
return $this->error->error(mensaje:'Error data[key_enlace] esta vacio '.$tabla, data:$data, es_final: true);
}
return true;
}