administrador.base.orm.modelo_base.columns_final - gamboamartin/administrador GitHub Wiki
columns_final
La función columns_final
es una función privada que se encarga de construir y retornar una cadena de columnas SQL final, combinando de manera adecuada las cadenas de columnas proporcionadas. La función garantiza que las columnas se concatenen correctamente, manejando los casos en que una o ambas cadenas puedan estar vacías.
Signatura
private function columns_final(string $column_data, string $columns_final): string
Parámetros
-
string $column_data
:
Una cadena que contiene una parte de las columnas SQL que se desean agregar al resultado final. -
string $columns_final
:
Una cadena que contiene las columnas SQL acumuladas hasta el momento. Esta cadena se combinará con$column_data
para formar la cadena final de columnas SQL.
Retorno
string
:
Retorna una cadena que representa las columnas SQL finales, combinando las cadenas proporcionadas ($column_data
y$columns_final
) de manera adecuada, con comas separadoras cuando sea necesario.
Explicación Detallada
-
Limpieza de las cadenas:
- La función utiliza
trim()
para eliminar cualquier espacio en blanco al inicio y al final de las cadenas$column_data
y$columns_final
.
- La función utiliza
-
Construcción de la cadena final:
- Si
$columns_final
está vacía después de la limpieza, se asigna a$columns_final
el valor de$column_data
. - Si
$columns_final
no está vacía y$column_data
tampoco está vacía, se concatenan ambas cadenas separadas por una coma.
- Si
-
Retorno de la cadena final:
- La función retorna la cadena
$columns_final
, que contiene todas las columnas SQL combinadas de manera adecuada.
- La función retorna la cadena
Ejemplos
$column_data = 'email';
$columns_final = 'id, nombre';
$resultado = $this->columns_final($column_data, $columns_final);
// Resultado esperado:
// 'id, nombre, email'
Código de la Función
private function columns_final(string $column_data, string $columns_final): string
{
$columns_final = trim ($columns_final);
$column_data = trim ($column_data);
if($columns_final === ''){
$columns_final.=$column_data;
}
else{
if($column_data !==''){
$columns_final = $columns_final.','.$column_data;
}
}
return $columns_final;
}