Saltar al contenido

Referencia pública ​

Este índice reúne las claves de configuración, variables de entorno, helpers globales, entradas CLI, contratos y familias de clases que aparecen en el checkout del 2026-10-24. Las referencias describen código y configuración fuente; no prueban que una dependencia Composer se haya instalado en una aplicación consumidora ni que un proveedor externo o una base de datos responda.

Carga y disponibilidad ​

El manifiesto raíz declara el prefijo PSR-4 Boctulus\Simplerest\Core\ hacia src/framework/. Composer excluye src/framework/Templates/ del classmap. En el bootstrap de la aplicación, app.php carga Composer y después incluye los directorios src/framework/Helpers/ y app/Helpers/ listados por config/autoload.php. Por eso los helpers del core pertenecen al bootstrap de aplicación existente; el autoload PSR-4 de Composer, por sí solo, no carga esas funciones.

El manifiesto que declara ese prefijo es composer.json.

Los helpers psr7_*() y setLang()/trans() pertenecen a paquetes opcionales cuyos manifiestos declaran autoload.files. Sólo están disponibles cuando Composer carga el paquete correspondiente. Algunas funciones del core también están condicionadas por function_exists() o actúan como polyfill. Véanse los adaptadores PSR-7, localización y configuración y entorno.

Claves de configuración ​

La fuente de las claves del runtime es config/config.php. Esta tabla conserva los nombres exactos, incluidos los que contienen errores ortográficos históricos.

ÁreaClavesValor por defecto o condición visible en el código
Identidadapp_url, app_name, app_env, namespace, base_urlLas tres primeras se leen del entorno sin fallback explícito; namespace Boctulus\Simplerest; base_url vacío.
Entrada y routingweb_router, console_router, front_controller, front_behaviors, remove_api_slug, default_controller, templateRouters y front controller habilitados; seis handlers predeterminados; conserva /api; controlador HomeController; plantilla templates/tpl.php.
HTTP y procesohttps, ssl_cert, DateTimeZone, tmp_dir, method_overrideHTTPS y certificado null por defecto; el comentario de fuente indica que ssl_cert = false desactiva verificación; zona Asia/Manila; temporal del sistema; override por URL y header habilitado.
Errores y trazaserror_handling, debug, error_log, log_file, log_sql, log_errors, log_stack_trace, var_dump_separatorsManejo de errores y SQL debug desactivados; APP_DEBUG y LOG_SQL usan false como fallback; error log y log de errores habilitados; log.txt; stack trace desactivado; separadores configurables.
API y datosusers_table, include_enity_name, nest_sub_resources, paginator, pretty, restrict_by_ip, restrict_by_user_agent, restrict_by_tenant, acl_fileTabla users; las dos opciones de representación y los tres límites de acceso están desactivados; paginador con máximo 50, default 10, parámetros size y page; ACL cache bajo SECURITY_PATH. El código escribe include_enity_name así.
Tokens y rolesaccess_token, refresh_token, email_token, auto_approval_roles, default_role, pre_activatedSecretos leídos del entorno, expiraciones de 3600, 1209600 y 3600 segundos, algoritmo HS256; roles admin, usuario, supervisor, superadmin; rol default null; usuarios preactivados. No se muestran valores de secretos.
CorreoemailRemitente y datos SMTP se leen del entorno; mailer default google.
Serviciossleep_time, translate, providers, cache_driver, use_composerPausa API Client de 0.15; gettext desactivado; DBCache; Composer habilitado. El array providers de esta aplicación contiene FineGrained ACL, LLM Providers y el módulo Security; son selecciones de este checkout, no defaults universales.
Integracionesopenai_api_key, claude_api_key, google_console_api_key, google_maps_api_key, sendinblue_api_key, google_auth, facebook_authCredenciales y callbacks se leen del entorno, sin valores secretos en esta referencia.

config/databases.php define estas claves:

ClaveAlcance observado
db_connectionsPerfiles declarados: main, relmotor, laravelshopify, edu, az, test_sqlite y pg_test. Algunos perfiles adicionales están comentados y no forman parte del array activo. Los campos de conexión incluyen host, port, driver, db_name, user, pass, charset, schema, engine, pdo_options y tb_prefix, según el perfil.
db_connection_defaultIdentificador default main.
tentant_groupsNombre literal de la clave en este checkout; conserva la grafía histórica tentant.

config/commands.php define paths, packages, framework_paths, overrides y cross_aliases. Actualmente habilita el paquete boctulus/simplerest-scaffolding y declara el alias cruzado make acl → acl make. El catálogo CLI completo y los efectos por comando están en php com.

Variables de entorno ​

Los nombres siguientes se extraen de las lecturas activas en config/, src/framework/, app/ y packages/boctulus/. Un nombre presente en el código no implica que esté definido en este equipo. No se incluyen valores de credenciales.

UsoVariables referenciadasCondición o fallback fuente
Identidad y diagnósticoAPP_URL, APP_NAME, APP_ENV, APP_DEBUG, LOG_SQLAPP_DEBUG y LOG_SQL usan fallback false; el resto se lee sin fallback explícito. APP_ENV también participa en la condición de seguridad TLS del adaptador Google Drive.
Base de datosDB_HOST, DB_PORT, DB_CONNECTION, DB_NAME, DB_USERNAME, DB_PASSWORD; los grupos equivalentes DB_HOST_RELMOTOR, DB_PORT_RELMOTOR, DB_CONNECTION_RELMOTOR, DB_NAME_RELMOTOR, DB_USERNAME_RELMOTOR, DB_PASSWORD_RELMOTOR, DB_CHARSET_RELMOTOR; y DB_HOST_EDU, DB_PORT_EDU, DB_CONNECTION_EDU, DB_NAME_EDU, DB_USERNAME_EDU, DB_PASSWORD_EDUDB_HOST, DB_HOST_RELMOTOR y DB_HOST_EDU tienen fallback 127.0.0.1; DB_CHARSET_RELMOTOR tiene fallback utf8. Los perfiles laravelshopify y az reutilizan las seis variables sin sufijo.
TokensTOKENS_ACCSS_SECRET_KEY, TOKENS_REFSH_SECRET_KEY, TOKENS_EMAIL_SECRET_KEYNombres exactos del código; ACCSS y REFSH conservan errores ortográficos. No se imprime ningún secreto.
CorreoMAIL_DEFAULT_FROM_ADDR, MAIL_DEFAULT_FROM_NAME, MAIL_HOST, MAIL_PORT, MAIL_USERNAME, MAIL_PASSWORD, MAIL_ENCRYPTION, MAIL_AUTHConsumidas por la configuración SMTP del core; el envío real corresponde al paquete opcional de correo.
OAuth y servicios del coreOPENAI_API_KEY, CLAUDE_API_KEY, GOOGLE_CONSOLE_API_KEY, GOOGLE_MAPS_API_KEY, SENDINBLUE_API_KEY, OAUTH_GOOGLE_CLIENT_ID, OAUTH_GOOGLE_CLIENT_SECRET, OAUTH_GOOGLE_CALLBACK, OAUTH_FACEBOOK_CLIENT_ID, OAUTH_FACEBOOK_CLIENT_SECRET, OAUTH_FACEBOOK_CALLBACKConfiguración fuente del core; que exista una clave no demuestra una llamada autenticada.
Paquetes opcionalesLLM_DEFAULT_PROVIDER, XAI_API_KEY, DEGUGLLM_DEFAULT_PROVIDER usa openai como fallback. DEGUG está mal escrito en el código y Google Drive lo consulta como una de varias condiciones para desactivar validación TLS; véase API Clients.
Aplicación de ejemplo y herramientasAMELIA_API_URL, AMELIA_API_KEY, SENDGRID_API_KEY, EXCHANGERATE_API_KEY, ROBOT_PATH, PYTHON_BINARY, PHP_BINARY, PATH, HOME, USERPROFILEUsadas por controladores, ejemplos, utilidades de sistema o comandos de la aplicación anfitriona; no son configuración general del core.

DB_*_WOO3, DB_*_PARTS, DB_*_2, DB_*_MPO_DOCKER, DB_*_MPP y DB_*_REMOTE aparecen en bloques comentados; esta referencia no los clasifica como perfiles activos. El paquete i18n escribe LANG, LANGUAGE y LC_ALL al seleccionar el locale: en ese flujo son efectos de proceso y no entradas de configuración de SimpleRest.

Fuentes de las filas anteriores: config/config.php, config/databases.php, simplerest-llm-providers/config/config.php, GoogleDrive, WPAmelia, ExchangeRate, RobotController, System y SkillDeleteCommand.

Helpers globales ​

Las funciones del core se agrupan por los archivos que app.php incluye. Su presencia en una aplicación Composer independiente no está garantizada sin ese bootstrap.

ÁreaFunciones declaradas en src/framework/Helpers/
Configuración, entorno y opcionesconfig, get_cfg, set_cfg, env, get_option, set_option
Cacheset_transient, get_transient, delete_transient, set_cache_driver
Fecha y horadatetime, at, now
Modelo, esquema y base de datoswithDefaultConnection, migrate, get_model_defs, get_defs, table, get_users_table, get_model_name, get_user_model_name, get_schema_path, get_schema_name, get_schema, inSchema, get_primary_key, get_id_name, get_rel_type, is_mul_rel, get_pivot, get_default_connection, get_default_connection_id, tb_prefix, get_model_namespace, get_model_instance, get_model_instance_by_table, get_api_name, sql_formatter, process_sql_file, enqueue_data, deque_data, log_queries
Factories y respuestastag, acl, auth, request, response, error
HTTP y URLscors, route, httpProtocol, redirect, get_api_key_from_request, apache_request_headers, is_ajax, namespace_url, base_url, site_url, consume_api
Vistas y assetsget_meta_tag, get_js_tag, get_css_tag, base, include_no_render, get_view_src, get_view, view, render, set_template, shortcode_asset, asset, section, get_metas, get_js, get_css, head, footer, js_file, js, css_file, css, var_encode, umodel
Diagnóstico y loggingshow_debug_trace, hide_debug_trace, show_debug_response, hide_debug_response, dd, ln, here, print_array, boom, puff, logger, dump, log_error, log_sql, dd_log, dd_error_log, kill_logs
HTML, paquetes y sistemapre, p, br, gdrive_file_updated_at, get_packages, get_packages_from_all_sources, package_scan_base, find_package_by_name, find_package_by_full_name, bg_com, is_cli, is_unix, set_server_limits, get_server_limits, long_run, nap, apply_filters, array_key_first

Implementaciones del core: cache.php, config.php, date.php, db.php, debug.php, env.php, etc.php, factories.php, gdrive.php, html.php, http.php, loggers.php, options.php, package.php, polyfill.php, system.php, url.php, view.php y wp_dummies.php.

Los paquetes añaden sus propias funciones globales cuando Composer carga sus archivos declarados:

La declaración de array_key_first() es un polyfill condicional. Varios wrappers de compatibilidad del core se declaran sólo cuando la función PHP o del host no existe.

Entradas de comandos ​

La entrada php com construye el catálogo CommandRegistry desde app/Commands/, las rutas configuradas y los paquetes habilitados; la configuración vigente habilita scaffolding. Formas de ayuda que sólo consultan el catálogo:

text
php com help
php com help <grupo>
php com <grupo> help

En la ayuda global observada en este checkout aparecen los grupos acl, doc, file, make, migrations, module, mysql, pack, roles, router, skill, sql, system, todo y users. El catálogo puede cambiar con la aplicación, rutas y paquetes habilitados. Consulta la referencia CLI para comandos y límites de efectos.

CliRouter es otra entrada: registra rutas CLI de aplicación y su resolución es independiente del grupo php com. Cuando CommandRegistry no reconoce un grupo, com puede continuar por CliRouter y luego por FrontController según la configuración; pack tiene una rama especial. Esta auditoría consultó pantallas de ayuda y no ejecutó subcomandos operativos ni rutas de CliRouter.

Fuentes de dispatch: com, CommandRegistry.php, BaseCommand.php, CliRouter.php, FrontController.php y config/commands.php.

Interfaces y traits ​

FamiliaContratos o traitsGuía
ACL y autorizaciónIAcl, IAclBuilder, IAclPolicy, IAclRuntime, AclEngineInterface, AuthorizationPolicyInterface, AuthorizationServiceInterfaceMotor de autorización
API y autenticaciónIApi, IAuth, ITransformerControladores API, autenticación
Cache y ejecuciónICache, IMemoization, ICountable, IProcessableCache, catálogo de referencia
Datos y esquemaIDbAccess, IMigration, IMyArrayAccess, ISchema, ISubResources, IUpdateBatch, ArrayableConexiones, relaciones, esquemas, migraciones
CLI y lifecycleICommand, IServiceProviderCLI, providers
Eventos, validación y webhooksIObserver, ISubject, IValidator, IWebhookTransportEventBus, validación, webhooks
Traits del coreCommandTrait, ErrorReporting, EventBusTrait, ExceptionHandler, InsertWithSubResourcesTrait, PagesTrait, QueryBuilderTrait, RelationshipTrait, SubResourceHandler, TimeExecutionTrait, UuidsCLI, errores, EventBus, relaciones, paginación y rendimiento, según su responsabilidad.
PaquetesIMail, LLMProviderInterface, ShopifyWooCommerceAdaptorTraitCorreo, LLM Providers, Shopify

UnitTestCaseRunAllTrait y UnitTestCaseSQLTrait son soporte de pruebas interno. src/framework/Templates/Interface.php y Trait.php son plantillas de generación con el nombre NAME__, no contratos runtime del core.

Contratos del core: Arrayable, IAcl, IAclBuilder, IAclPolicy, IAclRuntime, IApi, IAuth, ICache, ICommand, ICountable, IDbAccess, IMemoization, IMigration, IMyArrayAccess, IObserver, IProcessable, ISchema, IServiceProvider, ISubject, ISubResources, ITransformer, IUpdateBatch, IValidator y IWebhookTransport. Los contratos del motor ACL son AclEngineInterface, AuthorizationPolicyInterface y AuthorizationServiceInterface. Los contratos de paquetes son IMail y LLMProviderInterface.

Traits del core: CommandTrait, ErrorReporting, EventBusTrait, ExceptionHandler, InsertWithSubResourcesTrait, PagesTrait, QueryBuilderTrait, RelationshipTrait, SubResourceHandler, TimeExecutionTrait y Uuids. El adaptador de Shopify declara ShopifyWooCommerceAdaptorTrait.

Familias de clases ​

DominioClases principalesGuías dueñas
Entrada HTTP, routing y serviciosFrontController, Request, Response, WebRouter, Middleware, Container, ServiceProvider, ViewCiclo HTTP, routing, Request/Response, middleware, Container, providers, vistas
Controllers, handlers y erroresController, WebController, ConsoleController; RequestHandler, ApiHandler, AuthHandler, OutputHandler, MiddlewareHandler, ErrorHandler; familias de excepcionesHandlers, manejo de errores
CLICliRouter, CommandRegistry, BaseCommand, Cli, StdOutComandos, routing CLI
APIApiController, ResourceController, Collections, MySelf, Download, Files, TrashCanControladores, Collections, archivos, TrashCan, autenticación
DatosModel, ModelRecord, DB, DBRels, Schema, Migration, PaginatorModel, Query Builder, relaciones, esquemas, migraciones, paginación
SeguridadAcl, AclEngine, AclSnapshot, EffectivePermissionCompiler, TbPermissionBits, RoleHierarchyService, PermissionExplanationACL, motor de autorización
Runtime y soporteConfig, Env, Factory, Cache, DBCache, FileCache, InMemoryCache, EventBus, Logger, Validator, ValidationRules, CorsHandlerConfiguración, cache, EventBus, logging, validación, CORS
Red, archivos y contenidoApiClient, Curl, Files, FileUploader, Base64Uploader, ZipManager, HTML, XML, Image, JsonLd, MediaTypeApiClient, filesystem, uploads, archivos comprimidos, conversión
WebhooksWebhookPublisher, WebhookEvent, WebhookDeliveryDispatcher, WebhookEndpointPolicy, WebhookHttpTransport, WebhookSubscriptionMatcherWebhooks
Paquetes opcionalesClientes API; seeder AZ; ACL; builders HTML/CSS; imagen/PDF; GeoLite2/Maps; i18n; jobs; JWT; proveedores LLM; helpers legacy de host/strings; mail; PSR-7/SSE; scaffolding; Shopify; inspección webCatálogo de paquetes enlaza cada familia con su guía por contrato.

Puntos de entrada de las familias opcionales: GoogleDrive, AZSeederService, implementaciones Basic ACL y Fine-Grained ACL, Bt5Form, CSS, HtmlMinifier, HtmlBuilder, PdfBase, Imaginator, GeoLite2, GoogleMaps, Translate, BackgroundService, AuthController, LLMFactory, Hardware, Mail, ResponseAdapter, SSE, BaseMakeCommand, Shopify, Scanner y SimpleCrypt.

Implementaciones principales del core: FrontController, Request, Response, WebRouter, Middleware, Container, ServiceProvider, View, CliRouter, CommandRegistry, ApiController, ResourceController, Collections, MySelf, Download, Files, TrashCan, Model, ModelRecord, DB, DBRels, Schema, Migration, Paginator, Acl, AclEngine, AclSnapshot, EffectivePermissionCompiler, TbPermissionBits, RoleHierarchyService, PermissionExplanation, Config, Env, EventBus, Logger, Validator, ApiClient, Files utility, FileUploader, Base64Uploader, ZipManager, HTML, XML, Image, JsonLd, MediaType y las seis clases Webhook* de src/framework/Libs/.

Los controladores y handlers principales están implementados en Controller, WebController, ConsoleController, RequestHandler, ApiHandler, AuthHandler, OutputHandler, MiddlewareHandler, ErrorHandler y BaseException.

Las clases de apoyo restantes quedan asignadas en el mapa interno de la auditoría: contiene una fila única por cada uno de los 212 PHP de src/framework y 133 PHP bajo packages/boctulus, además de las 24 carpetas de paquetes; cada fila tiene guía dueña y clasificación. Distingue código público, contratos, soporte interno, pruebas, plantillas, polyfills, compatibilidad y paquetes legacy; el bundle simplerest-integrations queda clasificado como legacy sin PHP ni manifiesto Composer, y los tests PHP no se presentan como APIs instalables.

Límite de esta referencia ​

La referencia y el mapa son un índice de nombres y contratos fuente. Las guías enlazadas conservan por separado lo que sólo se inspeccionó, lo que se reprodujo y los límites de configuración, red, base de datos, instalación y despliegue. No infieras disponibilidad de una función o clase en runtime únicamente porque aparezca aquí.