Tutorial do CakePHP para iniciantes: o que é, por que usar e recursos

O que é CakePHP?

CakePHP é uma estrutura de código aberto para o rápido desenvolvimento e manutenção de aplicativos da web construídos em PHP. É baseado no conceito de arquitetura MVC, que ajuda a construir aplicações web PHP de forma fácil e simples com menos código. O CakePHP também ajuda a separar a lógica de negócios da camada de dados e da camada de apresentação.

Neste tutorial do CakePHP para iniciantes, você aprenderá os fundamentos do framework CakePHP como:

Por que usar o CakePHP Framework?

Aqui, estão os principais benefícios / prós de usar o framework CakePHP:

  • Cake PHP é, de longe, uma das plataformas de desenvolvimento web mais rápidas.
  • O CakePHP permite que os desenvolvedores obtenham controle aprimorado sobre o banco de dados e as consultas SQL.
  • Ajuda os usuários a desenvolver aplicativos da web robustos sem perder a flexibilidade do ambiente rapidamente.
  • Suporte para PostgreSQL, SQLite , MySQL, PEAR-DB para ADODB, uma biblioteca de abstração de banco de dados.
  • Facilita URLs amigáveis ​​para mecanismos de pesquisa
  • Fornece recursos como validação de entrada e ferramentas de sanitização que tornam o aplicativo seguro.
  • Modelagem com sintaxe PHP familiar

História do CakePHP

Agora, neste tutorial do CakePHP, cobriremos a história do framework CakePHP:

  • O CakePHP foi desenvolvido por Michal Tatarynowicz em 15 de abril de 2005.
  • O CakePHP o publicou sob licença do MIT e o abriu para os desenvolvedores da comunidade.
  • Em julho de 2005, Larry E Masters assumiu como desenvolvedor-chefe.
  • A versão 1.0 foi lançada em 2006.
  • A versão 2 foi lançada em 2011
  • A versão 3 foi lançada em 2014, revogando completamente as versões anteriores.
  • Versão 3.3.3. Of CakePHP foi lançado com muitos recursos avançados em setembro de 2016.
  • A versão 3.7.9 é a última versão lançada em 19 de junho de 2019

Recursos do CakePHP

Aqui estão recursos importantes do CakePHP.

  • Comunidade ativa e amigável
  • Arquitetura MVC
  • Validação integrada
  • Funciona a partir de qualquer diretório de site da Web, com alguma ou nenhuma configuração do Apache envolvida.
  • Motor de modelagem
  • Operações de Cache
  • Interações fáceis com o banco de dados CRUD.
  • Validação Integrada
  • Componentes Handlin como e-mail, cookie, segurança, sessão e solicitação
  • Ver Helpers para JavaScript, Ajax , Formulários HTML e muito mais

CakePHP- Estrutura da Pasta

Agora, neste tutorial do framework CakePHP, aprenderemos sobre a estrutura de pastas do CakePHP.

Abaixo está uma estrutura de pastas do CakePHP:

Pasta Descrição
TestesEsta pasta contém casos de teste para seu aplicativo.
TmpA pasta temporária armazena dados temporários.
FornecedorEsta pasta ajuda você a armazenar o CakePHP, e outras dependências do aplicativo serão instaladas.
WebrootO Webroot armazena todos os arquivos que você deseja que possam ser acessados ​​publicamente.
SouA pasta bin contém os executáveis ​​do console do Cake.
HistóricoEle contém seus arquivos de log, que dependem de sua configuração de log.
ConfigA pasta config armazena os arquivos de configuração que o CakePHP usa
PluginsEsta pasta contém plugins para o aplicativo. é onde os plug-ins que seu aplicativo usa são armazenados.
SrcEle contém uma tarefa de console e comandos para gerenciar seu aplicativo.

Locale Armazena arquivos de string para internacionalização.

Modelo Contém as tabelas, entidades e comportamentos de seu aplicativo.

Configuração do CakePHP

O CakePHP vem com um único arquivo de configuração por padrão. Também permite modificá-lo de acordo com seus requisitos. Existe uma pasta chamada 'config' fornecida para este propósito.

Nome variável Descrição
DepurarPermite que você altere a saída de depuração do CakePHP.
App.namespaceAjuda você a encontrar classes de aplicativos em.
App.baseUrlRemova o comentário desta palavra-chave quando não quiser usar o mod_rewrite do Apache com o CakePHP.
App.encodingEste comando permite que você defina qual codificação seu aplicativo usa.
App.baseÉ um diretório base em que o aplicativo reside. Se for falso, será detectado automaticamente.
App.fullBaseUrlNome de domínio qualificado
App.webrootÉ um diretório webroot.
App.wwwRootO caminho do arquivo para o webroot.
App.jsBaseUrlCaminho para o diretório js público.
App.pathsConfigure caminhos para recursos não baseados em classe.
App.cssBaseUrlÉ um caminho da web para o diretório css público em webroot.
Security.saltÉ uma string aleatória usada em hash.
Asset.timestampEsta variável permite anexar um carimbo de data / hora ao usar auxiliares adequados.

Cake- convenções de nomenclatura PHP

O Cake segue a ideia de convenção sobre configuração. O método de convenção de nomenclatura permite organizar a operação do aplicativo da web. Neste método, mais de uma palavra no nome deve ser separada por '_' ao nomear o arquivo e casos de camelo ao nomear a classe.

As partes MVC devem seguir a sintaxe fornecida abaixo:

Nome do arquivo Nome da classe Nome da classe base Localização
ModeloNome do arquivo Forma singular do nome da tabela com extensão .php ex: order.phpO nome do arquivo em um caso Camel, por exemplo: PedidoAppModel/ app / models
Controladortablename_controller com extensão .php, ex: ordcrs_controllcr.phpO nome da tabela anexado Controller, ex: OrdcrsControllerAppController/ app / controllers
VisualizarO nome da ação no controlador com extensão .ctp, ex: add.ctpSem aulas; a view c HTML tags e PHP. '
/ app / vuews / nome do controlador

Configuração de bancos de dados

O CakePHP permite que você configure o banco de dados em config / app.php Arquivo. Ele fornece conexão padrão com parâmetros fornecidos que você pode modificar de acordo com sua escolha.

Parâmetros importantes são fornecidos abaixo:

Base de dados Nome do banco de dados
codificação de porta (opcional)A porta TCP ou socket Unix usado para conectar ao servidor.
Fuso horárioFuso horário do servidor a ser definido.
EsquemaIsso ajuda a especificar qual esquema você pode usar.
unix_socketEste banco de dados usado por drivers para se conectar via arquivos de soquete Unix.
Chave SSLÉ um caminho de arquivo para o arquivo de chave SSL.
ssl_certÉ um caminho de arquivo para o arquivo de certificado SSL.
ssl_caÉ um caminho de arquivo para a autoridade de certificação SSL.
RegistroEste termo ajuda você a realizar o log de consultas.
IniciarUma lista de consultas que devem ser enviadas ao servidor de banco de dados sempre que a conexão é criada.

Defina como verdadeiro se quiser usar palavras reservadas ou caracteres especiais

Como o MVC funciona no CakePHP?

Agora, aprenderemos como o MVC funciona no CakePHP neste tutorial do framework CakePHP.

É uma maneira dinâmica de construir o mecanismo principal de um aplicativo da web. O modelo, a vista e o Controlador - separam-se.

Arquitetura MVC no CakePHP

framework de modelo de objeto de página em selenium webdriver

Cake PHP divide as operações em três partes:

  • Modelos: usado para todas as interações de banco de dados.
  • Visualizações: usado para todas as saídas e exibições.
  • Controladores: usados ​​para controlar o fluxo do aplicativo

Aqui estão as etapas para usar a arquitetura MVC no CakePHP:

Passo 1) O cliente ou usuário interage com a visão

Passo 2) Visualize o controlador de alertas do evento específico.

Etapa 3) Ele envia uma solicitação de banco de dados ao Modelo e o Controlador atualiza o modelo.

Passo 4) O modelo alerta a visualização de que mudou.

Etapa 5) O View recebe os dados do modelo e se atualiza de acordo com os dados recebidos.

Por que usar MVC?

  • O CakePHP MVC ajuda a separar a lógica de negócios da apresentação e recuperação de dados.
  • Um site é dividido em seções lógicas que você pode administrar com um controlador específico.
  • Ao testar e depurar um aplicativo, qualquer desenvolvedor o ajuda a localizar e corrigir erros sem ter detalhes completos do código.

Desvantagens de usar o framework CakePHP

  • O suporte de documentação do CakePHP não é tão abrangente quanto deveria ser.
  • Para usar o software CakePHP, o desenvolvedor precisa atualizar as rotas padrão para criar URLs sofisticados, o que é muito mais trabalhoso em comparação com outros frameworks PHP.
  • Roteamento unilateral do CakePHP em comparação com outros frameworks.
  • Aprender o framework PHP não é fácil.
  • Oferece roteamento unilateral é outra desvantagem quando comparado com frameworks como Ruby on Rails.

Resumo

  • O CakePHP é uma estrutura de código aberto que ajuda a tornar o desenvolvimento e a manutenção de aplicativos PHP muito mais fáceis.
  • O CakePHP permite que os desenvolvedores obtenham controle aprimorado sobre o banco de dados e as consultas SQL.
  • Foi desenvolvido por Michal Tatarynowicz em 15 de abril de 2005
  • Arquitetura MVC e validação integrada são os recursos mais importantes do CakePHP
  • O CakePHP vem com um único arquivo de configuração por padrão que permite a você modificá-lo de acordo com seus requisitos.
  • O método de convenção de nomenclatura do CakePHP permite que você organize a operação da aplicação web.
  • O CakePHP permite que você configure o banco de dados no arquivo config / app.php.
  • Cake PHP divide as operações MVC em três partes:
  • Modelos: Usado para todas as interações do banco de dados, Visualizações: Usado para todas as saídas e exibições, Controladores: Usado para controlar o fluxo do aplicativo
  • A maior vantagem de usar MVC no CakePHP é que ele ajuda a separar a lógica de negócios da apresentação e recuperação de dados.
  • A maior desvantagem do CakePHP é que o suporte de documentação do CakePHP não é tão abrangente quanto deveria ser.