administrador.modelado.params_sql.limit_sql - gamboamartin/administrador GitHub Wiki
limit_sql
La función limit_sql
es una función privada que genera una cláusula SQL LIMIT
en función de un valor entero proporcionado. La función asegura que el valor del límite sea válido y, si lo es, construye la cláusula LIMIT
correspondiente.
Signatura
private function limit_sql(int $limit): string|array
Parámetros
int $limit
:
Un valor entero que representa el número máximo de registros que se deben devolver en una consulta SQL. Debe ser mayor o igual a 0.
Retorno
string|array
:
Retorna una cadena que representa la cláusula SQLLIMIT
si el valor de$limit
es mayor que 0. Si$limit
es 0, retorna una cadena vacía. En caso de error (si$limit
es menor que 0), retorna un array de error generado por$this->error->error()
.
Explicación Detallada
-
Validación del límite:
- La función verifica si el valor de
$limit
es menor que 0. - Si
$limit
es menor que 0, se genera un mensaje de error y se retorna un array con el mensaje de error.
- La función verifica si el valor de
-
Generación de la cláusula
LIMIT
:- Si
$limit
es mayor que 0, la función construye la cláusula SQLLIMIT
concatenando el valor de$limit
. - Si
$limit
es igual a 0, la función retorna una cadena vacía, lo que indica que no se aplicará ningún límite en la consulta SQL.
- Si
-
Retorno de la cláusula
LIMIT
:- La función retorna la cadena que representa la cláusula
LIMIT
generada o una cadena vacía si no se aplica ningún límite.
- La función retorna la cadena que representa la cláusula
Ejemplos
$limit = 10;
$resultado = $this->limit_sql($limit);
// Resultado esperado:
// ' LIMIT 10' si $limit es mayor que 0.
// Una cadena vacía si $limit es igual a 0.
// Un array de error si $limit es menor que 0.
Código de la Función
private function limit_sql(int $limit): string|array
{
if($limit<0){
return $this->error->error(mensaje: 'Error limit debe ser mayor o igual a 0', data: $limit, es_final: true);
}
$limit_sql = '';
if($limit > 0){
$limit_sql.=' LIMIT '.$limit;
}
return $limit_sql;
}