bruninho51/php-clipboard
Composer 安装命令:
composer require bruninho51/php-clipboard
包简介
PhpClipboard é uma biblioteca para geração de formulários através de um banco de dados.
README 文档
README
Biblioteca PHP para criação de formulários em HTML.
Instalando
Primeiro de tudo, é necessário baixar a biblioteca. Você pode usar o Composer para isso:
composer require bruninho51/php-clipboard @dev
Criando Tabelas
Em seguida, você deverá criar as tabelas que a biblioteca necessita. Para isto, rode o script database.sql, disponível em vendor/bruninho51/php-clipboard.
Criando o Adaptador
Para que a biblioteca possa se comunicar com o banco, é necessário que você crie um adaptador. O adaptador deve respeitar a interface IphpClipboardAdapter. Na pasta example, há um exemplo de implementação de adaptador utilizando PDO.
Chamando um formulário
Veja abaixo um exemplo de como gerar o HTML de um formulário cadastrado:
include_once DIR . '/../vendor/autoload.php';
include 'AdapterExample.php';
$adapter = new AdapterExample;
$myClip = new PhpClipboard\PhpClipboard($adapter);
$form = $myClip->getForm(1);
echo $form->getHTML('Action.php', 'default')
- Você deverá instanciar seu adaptador;
- Em seguida, deve instanciar o PhpClipboard passando o adaptador no contrutor;
- Chame o método getForm, passando o id do formulário. Ele retornará um objeto do tipo FormPhpClipboard;
- Com o objeto acima em mãos, chame o método getHTML, passando a action do formulário e o nome do template.
Criando Regras de Formulário
Para criar uma regra, crie uma classe na pasta vendor/bruninho51/php-clipboard/roles. A classe deve herdar da classe RolePhpClipboard. Um método chamado role deve ser criado, com um argumento de nome $form, do tipo IFormPhpClipboad. É nesse método que a validação deve ser implementada. Em caso de erro, você deve emitir uma Exception, que será tratada pela biblioteca.
MyProcessPhpClipboard
No banco de dados, na tabela de formulário existem as seguintes colunas: processValidateSuccess e processValidateFailure. Você deverá criar dois métodos em vendor/bruninho51/php-clipboard/src/MyProcessPhpClipboard.php: Um para ser chamado caso a validação do formulário falhe, e outro para ser chamado caso os dados enviados pelo usuário passe na validação. O nome dos métodos devem ser colocados nas respectivas colunas. Exemplo de método de tratamento em MyProcessPhpClipboard:
function myProcessExample(FormPhpClipboard $form)
{
}
Perceba que o método deve ter um argumento do tipo FormPhpClipboard. A biblioteca fará a injeção de dependência do formulário enviado pelo usuário automáticamente.
Criando Templates de Formulário
Os templates de formulário devem ser criados na pasta vendor/bruninho51/php-clipboard/templates. Eles devem ser colocados na raiz dessa pasta. O contexto do template é a interface IphpClipboardTemplate. Chame os métodos usando $this. A interface possui métodos tanto para conseguir informações do formulário, como nome e id, como as informações dos campos.
Entradas Personalizadas
Por padrão, a biblioteca cria entradas de formulário comuns, mas você pode criar entradas personalizadas. Para criar uma entrada personalizada, crie um template em vendor/bruninho51/php-clipboard/templates/components. O contexto do template é o objeto PhpClipboardComponentEntry. Você poderá usar as propriedades e métodos desse objeto para resgatar os dados da entrada de formulário, e assim, criar sua entrada personalizada. Para acessar os métodos, use $this. Em seguida, você deverá criar uma classe em vendor/bruninho51/php-clipboard/components. Ela deve ter o namespace PhpClipboard\Components, herdar de PhpClipboardComponentEntry e também deve ser criado o atributo $template, com o nome do template criado anteriormente. Com o componente criado, entre no registro do banco de dados, na tabelas de campos, e na coluna component, coloque o nome da classe criada.
Exemplo Prático Para um melhor exemplo, entre na pasta example, em vendor/bruninho51/php-clipbord.
bruninho51/php-clipboard 适用场景与选型建议
bruninho51/php-clipboard 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 11 次下载、GitHub Stars 达 0, 最近一次更新时间为 2019 年 02 月 02 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 bruninho51/php-clipboard 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 bruninho51/php-clipboard 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 11
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: GPL-3.0
- 更新时间: 2019-02-02