-
Notifications
You must be signed in to change notification settings - Fork 2
phpdoc modelobase
Clase base de \modelo
. Separamos la funcionalidad de la siguiente forma simplemente para una mejor organización y claridad del código:
modeloBase
Clase con las propiedades y métodos más generales del modelo de datos.
modelo
Clase que extienden las clases concretas del modelo de la aplicación con los métodos útiles que implementan los métodos
generales de modeloBase
en formas específicas, como donde()
, dondeNo()
, etc.
Constructor.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$bd |
\datos\bd |
Instancia de la base de datos a utilizar. Opcional; si se omite, se utilizará la instancia global. | Si | null |
$nombre |
string |
Nombre del modelo de datos. Parámetro de uso interno (normalmente debe omitirse). | Si | null |
$tipoEntidad |
string |
Nombre completo del tipo de las entidades. Parámetro de uso interno (normalmente debe omitirse). | Si | null |
Devuelve: \entidadBase
Devuelve una nueva instancia de las entidades de este modelo.
Fabrica el modelo de datos correspondiente a un campo relacional.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$campo |
object |
Parámetros del campo a evaluar. |
Devuelve: \modeloBase
Devuelve: string
Devuelve el nombre de la tabla o esquema.
Devuelve: string
Devuelve el nombre del modelo.
Devuelve: object
Devuelve los campos de las entidades.
Devuelve: string
Devuelve el alias.
Establece el alias.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$alias |
Devuelve: \modeloBase
Devuelve: int
|null
Devuelve la cantidad de filas seleccionadas o afectadas en la última consulta.
Devuelve: int
|null
Devuelve el ID del último registro insertado.
Devuelve: \modeloBase
Reinicia la instancia para construir una nueva consulta.
Establece que se deben asignar los campos ocultos.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$activar |
bool |
Activar o desactivar este parámetro. | Si | true |
Devuelve: \modeloBase
Establece que se deben omitir todos los campos relacionales.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$omitir |
bool |
Activar o desactivar este comportamiento. | Si | true |
Devuelve: \modeloBase
Establece que se deben omitir los campos relacionales tipo 1:n
.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$omitir |
bool |
Activar o desactivar este comportamiento. | Si | true |
Devuelve: \modeloBase
Establece que se deben incluir en la selección los registros con baja lógica.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$activar |
bool |
Activar o desactivar este parámetro. | Si | true |
Devuelve: \modeloBase
Establece que se debe forzar el procesamiento de determinados campos relacionales, aunque las relaciones estén desactivadas. Este parámetro afecta únicamente las consultas de selección.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
...$campos |
Devuelve: \modeloBase
Establece que se deben eliminar los registros de las tablas foráneas cuando las relaciones se eliminen.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$activar |
bool |
Activar o desactivar este parámetro. | Si | true |
Devuelve: \modeloBase
Devuelve: \entidadBase
Devuelve la entidad actual.
Abre un grupo de condiciones o paréntesis.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$union |
int |
Unión con la condición anterior, modeloBase::y (AND ), modeloBase::o (OR ), modeloBase::ox (XOR ). |
Si | self::y |
Devuelve: \modeloBase
Devuelve: \modeloBase
Cierra un grupo de condiciones o paréntesis.
Establece los campos a seleccionar.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
...$campos |
Devuelve: \modeloBase
Establece el límite.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$origen |
int |
Origen o registro inicial, comenzando desde 0 . |
||
$cantidad |
int |
Cantidad. |
Devuelve: \modeloBase
Establece el ordenamiento.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$campo |
string |
Nombre del campo. Si se omite el alias, se asume campo de este modelo. | ||
$sentido |
string |null
|
Sentido ('asc' o 'desc' ). |
Si | null |
Devuelve: \modeloBase
Establece el agrupamiento (GROUP BY
).
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$campo |
string |
Nombre del campo. Si se omite el alias, se asume campo de este modelo. |
Devuelve: \modeloBase
Establece los valores para la operación de inserción o actualización. Solo se considerarán aquellas propiedades cuyo valor no sea
null
(además de ser válidas).
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$valores |
object |array |\entidadBase
|
Valores como objeto, array asociativo o instancia de una entidad. | ||
$reemplazar |
bool |
Si es false , actualizará los valores asignados previamente. |
Si | false |
Devuelve: \modeloBase
Establece los valores para la operación de inserción o actualización. Solo se considerarán aquellas propiedades públicas (es decir,
que presenten @publico
y cuyo valor no sea null
(además de ser válidas). Este método debe utilizarse cuando se reciban valores
desde el cliente.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$valores |
object |array |\entidadBase
|
Valores como objeto, array asociativo o instancia de una entidad. | ||
$reemplazar |
bool |
Si es false , actualizará los valores asignados previamente. |
Si | false |
Devuelve: \modeloBase
Ejecuta la consulta y devuelve un listado de resultados. Nótese que si la consulta falla o no hay coincidencias, devolverá siempre un array vacío.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$comoObjetoEstandar |
bool |
Si es true , devolverá objetos estándar en lugar de instancias de la entidad. |
Si | false |
Devuelve: array
Ejecuta la consulta y devuelve un único registro, o null
.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$comoObjetoEstandar |
bool |
Si es true , devolverá un objeto estándar en lugar de una instancia de la entidad. |
Si | false |
Devuelve: object
|\entidadBase
Busque y devuelve el registro de ID $id
, o null
. Nótese que la búsqueda se combinará con otras condiciones preexistentes.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$id |
int |
ID a buscar. | ||
$comoObjetoEstandar |
bool |
Si es true , devolverá un objeto estándar en lugar de una instancia de la entidad. |
Si | false |
Devuelve: object
|\entidadBase
Devuelve: \datos\resultado
Ejecuta la consulta y devuelve el resultado crudo.
Prepara la consulta.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$operacion |
int |
Operación a realizar (modeloBase::seleccionar , modeloBase::actualizar , modeloBase::crear , modeloBase::eliminar , modeloBase::contar ). |
Si | self::seleccionar |
Devuelve: \modeloBase
Establece que se va a reutilizar la consulta preparada con nuevos parámetros.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$parametros |
array |object |\entidadBase
|
Nuevos valores a asignar. |
Devuelve: \modeloBase
Realiza el bloqueo de tablas.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$modo |
int |
Modo (modeloBase::soloLectura , modeloBase::lecturaEscritura ). |
Devuelve: \modeloBase
Devuelve: \modeloBase
Desbloquea las tablas. Nótese que se desbloquearán inmediatamente (no luego de realizada la consulta).
Comienza una transacción. Nótese que la transacción comenzará inmediatamente (no al realizar la consulta).
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$modo |
int |
Modo (modeloBase::soloLectura , modeloBase::lecturaEscritura ). |
Devuelve: \modeloBase
Devuelve: \modeloBase
Finaliza la transacción (commit). Nótese que la transacción finalizará inmediatamente (no luego de realizar la consulta).
Devuelve: \modeloBase
Descarta la transacción (rollback). Nótese que la transacción finalizará inmediatamente (no luego de realizar la consulta).
Devuelve: int
Estima y devuelve la cantidad de registros que devolvería una consulta con la configuración actual.
Devuelve: \modeloBase
Guarda los valores actualmente asignados. Actualizará o creará el registro según esté asignada o no el campo id
.
Actualiza el o los registros con los valores actualmente asignados.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$id |
int |
ID a actualizar. Opcional, si se omite, se utilizará el valor del campo id . |
Si | null |
Devuelve: \modeloBase
Devuelve: \modeloBase
Crea el registro con los valores actualemnte asignados.
Elimina un registro.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$id |
int |
ID. Nótese que se combinará con cualquier condición preexistente. | Si | null |
Devuelve: \modeloBase
Recupera (restaura) un registro eliminado.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$id |
int |
ID. Nótese que se combinará con cualquier condición preexistente. | Si | null |
Devuelve: \modeloBase
Devuelve: object
Devuelve los detalles de la última consulta ejecutada.
Devuelve el tipo correspondiente a un campo de la entidad.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$campo |
object |
Parámetros del campo a evaluar. |
Devuelve: int
Agrega una condición.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$campo |
string |
Campo. | ||
$operador |
mixed |
Operador de comparación (= , < , <= , > , >= , <> , modeloBase::como , modeloBase::noComo ). |
||
$valor |
mixed |
Valor a comparar. | ||
$union |
int |
Unión con la condición anterior, modeloBase::y (AND ), modeloBase::o (OR ), modeloBase::ox (XOR ). |
Si | self::y |
$tipoCondicion |
int |
Tipo de condición, modeloBase::donde (WHERE ) o modeloBase::teniendo (HAVING ). |
Si | self::donde |
Devuelve: \modeloBase
Agrega una condición para un campo de búsqueda (@busqueda
).
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$alias |
string |
Alias. | ||
$campo |
string |
Nombre del campo. | ||
$valor |
string |
Valor a buscar. | ||
$union |
int |
Unión con la condición anterior, modeloBase::y (AND ), modeloBase::o (OR ), modeloBase::ox (XOR ). |
||
$tipoCondicion |
int |
Tipo de condición, modeloBase::donde (WHERE ) o modeloBase::teniendo (HAVING ). |
Si | self::donde |
Devuelve: \modeloBase
Agrega una condición como un fragmento de código SQL.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$sql |
string |
Código SQL. | ||
$parametros |
array |
Parámetros utilizados en la sentencia, como ['nombre'=>valor] . |
Si | null |
$tipos |
array |
Tipos de los valores, como ['nombre'=>tipo] (ver constantes constructor::tipo ). Opcional; si se omite, se estimarán los tipos automáticamente. |
Si | null |
$union |
int |
Unión con la condición anterior, modeloBase::y (AND ), modeloBase::o (OR ), modeloBase::ox (XOR ). |
Si | self::y |
$tipo |
int |
Tipo de condición, modeloBase::donde (WHERE ) o modeloBase::teniendo (HAVING ). |
Si | condicion::donde |
Devuelve: \modeloBase
Agrega una relación con un modelo foráneo.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$tipo |
int |
Tipo de relación, relacion::izquierda (LEFT JOIN ), relacion::derecha (RIGHT JOIN ), relacion::interior (INNER JOIN ). |
||
$modelo |
\modeloBase |
Instancia del modelo. | ||
$alias |
string |
Alias. | ||
$campo |
string |
Nombre del campo local. | ||
$campoForaneo |
string |
Nombre del campo foráneo. |
Devuelve: \modeloBase
Agrega una relación cuya condición (ON ...
) es un fragmento de código SQL.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$tipo |
int |
Tipo de relación, relacion::izquierda (LEFT JOIN ), relacion::derecha (RIGHT JOIN ), relacion::interior (INNER JOIN ). |
||
$modelo |
\modeloBase |
Instancia del modelo. | ||
$alias |
string |
Alias. | ||
$condicion |
string |
Código SQL de la condición. | ||
$parametros |
array |
Parámetros utilizados en la sentencia, como ['nombre'=>valor] . |
Si | null |
$tipos |
array |
Tipos de los valores, como ['nombre'=>tipo] (ver constantes constructor::tipo ). Opcional; si se omite, se estimarán los tipos automáticamente. |
Si | null |
Devuelve: \modeloBase
Devuelve: \datos\resultado
Ejecuta la sentencia construída.
Agrega todos los campos a la próxima operación de selección.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$modelo |
\modeloBase |
Modelo del cual extraer el listado de campos. Opcional; si se omite, se asume el modelo actual. | Si | null |
$alias |
string |
Alias del modelo. Opcional; si se omite, se obtendrá de $modelo . |
Si | null |
Devuelve: \modeloBase
Devuelve: \modeloBase
Prepara el constructor para una operación de selección estándar.
Procesa una fila o registro de resultados.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$fila |
object |
Fila. | ||
$comoObjetoEstandar |
bool |
Si es false , devolverá una instancia de la entidad. |
Si | false |
$modelo |
\modeloBase |
Modelo del cual extraer el listado de campos. Opcional; si se omite, se asume el modelo actual. | Si | null |
$procesarRelaciones |
bool |
Solo si es true se procesarán los campos relacionales. |
Si | true |
Devuelve: object
|\entidadBase
Procesa los campos relacionales tras una operación de selección.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$comoObjetoEstandar |
bool |
Si es false , devolverá una instancia de la entidad. |
Devuelve: object
|\entidadBase
Finaliza la configuración y construye la consulta. Nótese que por el momento ignora modeloBase::eliminar
(todas las bajas
son bajas lógicas, que son en realidad actualizaciones del campo e
).
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$operacion |
int |
Operación (modeloBase::seleccionar , etc.). |
Devuelve: \modeloBase
Devuelve: \modeloBase
Agrega todas las relaciones correspondientes a los campos relacionales de la entidad.
Devuelve: \modeloBase
Agrega todos los valores correspondientes a la entidad asignada.
Construye el valor final a almacenar en una columna de búsqueda.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$cadena |
string |
Cadena a procesar. |
Devuelve: string
Procesa los campos relacionales previo a ejecutar la consulta.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$operacion |
int |
Operación que se realizará en la consulta (modeloBase::seleccionar , etc.). |
Devuelve: \modeloBase
Procesa los campos relacionales postarior a la ejecución de la consulta.
Parámetro | Tipo | Descripción | Opcional | Predeterminado |
---|---|---|---|---|
$operacion |
int |
Operación que se realizó (modeloBase::seleccionar , etc.). |
Devuelve: \modeloBase
¿Probaste Foxtrot? Contanos qué te pareció 🥰 contacto@foxtrot.ar
Índice
Primeros pasos
Gestor de aplicaciones
Editor de vistas
Componentes
Módulos
Comunicación cliente<->servidor
Modelo de datos - ORM
PHPDOC
JSDOC
☝ Comentarios
🤷♂️ Dudas
🤓 Ayuda
⌨ Contribuciones
Escribinos: contacto@foxtrot.ar