Uma estrutura leve PHP
Uma simples "estrutura" do PHP? Ou pode -se dizer que é um modelo de aplicação.
ORM usa ORM eloquente, as rotas usam Fastoute
A maioria dos projetos de interface se refere ao Laravel, que adota o modo de fachada, o modo singleton, a inversão de controle (IOC) e a injeção de dependência (DI) e alguns também usam outros modos de design.
Contêiner IOC integrado, compatível com PSR-11
Suporta a integração com o ReacTJS e outras estruturas de front-end também estão ok, mas eu apenas escrevi a configuração do ReactJS.
Middleware que suporta o padrão PSR-15.
Solicitações e respostas encapsuladas, projetadas de acordo com o padrão PSR-7, mas adicionaram interfaces semelhantes a Laravel.
Suporta a definição de injeção de dependência, roteamento e middleware através da anotação
Ele suporta AOP, mas como não há método do agente de herança, o escopo de suporte para entrada é limitado. Atualmente, ele suporta a entrada da loja e a entrada do controlador. Ao mesmo tempo, métodos correspondentes foram adicionados ao contêiner para fornecer funções de entrada.
A razão pela qual o proxy de herança não é usado é que o PHP não possui uma interface de reflexão de proxy semelhante à do Java. O proxy da herança do PHP precisa usar o aval ou exige declarar dinamicamente a classe, que tem um risco de segurança.
Forneça uma implementação simples de observador, embora geralmente inútil.
Use APCU para anotações de cache
Ele fornece uma implementação de uma fila de tarefas, semelhante a uma coroutina, que pode ser desistida proativa, mas como o PHP não possui um mecanismo de threading, não pode alcançar o não bloqueio.
Como você está escrevendo esse tipo de projeto pela primeira vez, haverá muitas falhas e vulnerabilidades de design. Não é recomendável usar o projeto em qualquer ambiente de produção, apenas para aprender. Se você tiver sugestões melhores ou encontrar deficiências, não hesite em feedback.
O objetivo de escrever este projeto é se preparar para o próximo projeto do blog, porque não há estrutura para usar; portanto, este projeto 2333 foi criado.
git clone https://github.com/syfxlin/xkphp.gitcomposer install Em alguns casos, laminas/laminas-httphandlerrunner não podem ser instaladas normalmente. Neste momento, você precisa instalar primeiro laminas/laminas-diactoros .
yarnphp -r " echo base64_encode(openssl_random_pseudo_bytes(32)); "composer migration:upphp -S 0.0.0.0:8000 -t publicNenhum ainda
O XK-PHP é escrito e mantido com a ajuda de Otstar Lin e os seguintes colaboradores.
Otstar Lin -Site pessoal · Blog · Github
Código aberto sob a licença Apache License 2.0.