administrador.modelado.joins.data_tabla_sql.21.16.0 - gamboamartin/administrador GitHub Wiki
data_tabla_sql
Esta función privada se encarga de manejar y generar los datos para una tabla en una consulta SQL, incluyendo la preparación de joins si es necesario.
Signatura
private function data_tabla_sql(string $key, array|string $tabla_join, string $tablas): array|string
Parámetros
$key (string): La clave de la tabla principal para el join en español.
$tabla_join (array|string): La tabla o tablas con las que se va a realizar el join.
$tablas (string): La cadena de tablas a las que se unirán los datos.
Retorna
- array|string: Un array con los datos para realizar la consulta SQL, o un mensaje de error si ocurre un problema durante el proceso.
Explicación Detallada
Preparación de variables: Se asigna la variable $tablas_env con el valor de $tablas inicialmente para su posterior uso.
Manejo de tablas para joins: Se verifica si $tabla_join es un array, lo que indica la presencia de múltiples tablas para realizar joins. En ese caso, se llama a la función tablas_join_base() para manejar los joins base. Si se produce un error durante este proceso, se devuelve un mensaje de error.
Manejo de tabla join en español: Si $tabla_join no es un array pero contiene un valor, se asume que es el nombre de una tabla en español para realizar un join específico. En este caso, se llama a la función tablas_join_esp() para manejar el join en español. Si se produce un error durante este proceso, se devuelve un mensaje de error.
Retorno de datos o mensaje de error: Finalmente, se devuelve la cadena de tablas generada para la consulta SQL si el proceso se realizó correctamente, o un mensaje de error si ocurrió algún problema durante el proceso.
Ejemplos
// Ejemplo: Generar datos para una consulta SQL
$tabla_principal = "usuarios";
$tabla_join = "pedidos";
$tablas_existente = "productos";
$resultado_data = data_tabla_sql($tabla_principal, $tabla_join, $tablas_existente);
if (is_array($resultado_data)) {
// Procesar los datos generados para la consulta SQL
var_dump($resultado_data);
} else {
// Manejar el mensaje de error
echo "Error: $resultado_data";
}
Código de la Función
private function data_tabla_sql(string $key, array|string $tabla_join, string $tablas): array|string
{
$tablas_env = $tablas;
if(is_array($tabla_join)){
$tablas_env = $this->tablas_join_base(tabla_join: $tabla_join, tablas: $tablas);
if(errores::$error){
return $this->error->error(mensaje: 'Error al generar data join', data: $tablas_env);
}
}
else if ($tabla_join) {
$tablas_env = $this->tablas_join_esp(key: $key,tabla_join: $tabla_join, tablas: $tablas);
if(errores::$error){
return $this->error->error(mensaje: 'Error al generar join', data: $tablas_env);
}
}
return $tablas_env;
}