Conn2Flow
Navegação das docs

Referência / Bibliotecas

Bibliotecas do Gestor

Como as bibliotecas de gestor/bibliotecas/ são registradas e carregadas, quais já vêm carregadas e como um módulo pede as suas.

As bibliotecas são arquivos PHP procedurais em gestor/bibliotecas/, e cada um agrupa funções com o mesmo prefixo (banco_*, modelo_*, interface_*…). Não há autoload nem namespace: elas entram por require_once, a partir de um registro central.

O registro: $_GESTOR['bibliotecas-dados']

Em gestor/config.php, cada nome lógico aponta para um ou mais arquivos:

$_GESTOR['bibliotecas-dados'] = Array(
    'banco'   => Array('banco.php'),
    'gestor'  => Array('gestor.php'),
    'modelo'  => Array('modelo.php'),
    // ...
    'cron'    => Array('cron.php'),
);

É o nome lógico, e não o arquivo, que módulos e funções usam para pedir uma biblioteca.

O que já vem carregado

config.php carrega sempre banco, gestor, modelo e hooks (lista $_GESTOR['bibliotecas']). Em qualquer ponto do Gestor, funções como banco_select(), gestor_variaveis(), modelo_var_troca() e hook_do_action() estão disponíveis.

Como um módulo pede bibliotecas

  1. O JSON do módulo declara a lista em bibliotecas:

{ "versao": "1.0.4", "bibliotecas": ["interface", "html", "html-editor"] }
  1. O controlador do módulo lê o JSON para $_GESTOR['modulo#<id>'] e, na função <modulo>_start(), chama gestor_incluir_bibliotecas(), que faz require_once de cada arquivo registrado e marca o nome em $_GESTOR['bibliotecas-inseridas'].

  2. Em código avulso (widgets, controladores, rotinas), use gestor_incluir_biblioteca('nome') ou gestor_incluir_biblioteca(['a', 'b']), que pula o que já foi incluído.

As bibliotecas também podem ter rotinas AJAX próprias: interface.php repassa as requisições AJAX de interface a html_editor_ajax_interface() quando html-editor está entre as bibliotecas do Gestor ou do módulo.

cron.php é executado fora do ciclo de módulo e, por isso, inclui suas bibliotecas diretamente em vez de usar gestor_incluir_bibliotecas().

Referência por biblioteca

Cada biblioteca tem uma página com a lista de funções gerada do código (c2f docs:extract) e a explicação do comportamento real. Veja o menu "Referência → Bibliotecas".

O Futuro é Híbrido: Humano + IA.

O Conn2Flow é a ferramenta. Se você precisa do Arquiteto para desenhar a estratégia da sua empresa usando essa tecnologia...

Contrate Consultoria Especializada