Tutorial de CakePHP para principiantes: ¿Qué es el marco CakePHP?

Resumen del tutorial de CakePHP

En este tutorial de CakePHP, aprenderemos todos los conceptos básicos desde cero. Este tutorial cubre la definición, el historial, las características, la estructura y configuración de carpetas de CakePHP y breves detalles sobre cómo funciona el marco de CakePHP.

¿Qué es CakePHP?

CakePHP es un marco de código abierto para el rápido desarrollo y mantenimiento de aplicaciones web creadas en PHP. Se basa en el concepto de MVC. architecture, que ayuda a crear aplicaciones web PHP de forma fácil y sencilla con menos código. CakePHP también le ayuda a separar la lógica empresarial de la capa de datos y la capa de presentación.

¿Por qué utilizar el marco CakePHP?

A continuación se detallan los principales beneficios/ventajas de usar el marco CakePHP:

  • Cake PHP es, con diferencia, una de las plataformas de desarrollo web más rápidas.
  • CakePHP permite a los desarrolladores obtener un control mejorado sobre la base de datos y las consultas SQL.
  • Ayuda a los usuarios a desarrollar aplicaciones web sólidas sin perder rápidamente la flexibilidad de su entorno.
  • Apoyo a PostgreSQL, SQLite, MySQL, PEAR-DB para ADODB, una biblioteca de abstracción de bases de datos.
  • Facilita las URL amigables para los motores de búsqueda
  • Proporcione funciones como validación de entradas y herramientas de desinfección que hacen que la aplicación sea segura.
  • Plantillas con sintaxis PHP familiar

Historia de CakePHP

Ahora, en este tutorial de CakePHP, cubriremos la historia del marco CakePHP:

Año Milestone
2005 CakePHP fue desarrollado por Michal Tatarynowicz el 15 de abril de 2005.
2005 CakePHP lo publicó bajo licencia MIT y lo abrió a la comunidad de desarrolladores.
2005 Larry E Masters asumió el cargo de desarrollador principal.
2006 Se lanzó la versión 1.0
2011 Se lanzó la versión 2
2014 Se lanzó la versión 3, que revoca por completo las versiones anteriores.
2016 Versión 3.3.3. De CakePHP se lanza con muchas funciones avanzadas.
2019 La versión 3.7.9 es la última versión publicada
2021 El equipo central de CakePHP anuncia la disponibilidad inmediata de CakePHP 4.2.2

Características de CakePHP

Estas son las características importantes de CakePHP.

  • Comunidad activa y amigable
  • MVC architectura
  • Validación incorporada
  • Funciona desde cualquier directorio de sitio web, con alguna o ninguna configuración de Apache involucrada.
  • Motor de plantillas
  • Operaciones de almacenamiento en caché
  • Interacciones sencillas con la base de datos CRUD.
  • Validación incorporada
  • Componentes Handlin como Email, Cookie, Seguridad, Sesión y Solicitud
  • Ver ayudantes para JavaScript, Ajax, formularios HTML y más

CakePHP- Estructura de carpetas

Ahora, en este tutorial del marco de CakePHP, aprenderemos sobre la estructura de carpetas de CakePHP.

A continuación se muestra una estructura de carpetas de CakePHP:

carpeta Descripción
Examenes Esta carpeta contiene casos de prueba para su aplicación.
tmp La carpeta temporal almacena datos temporales.
Proveedor Esta carpeta le ayuda a almacenar CakePHP y se instalarán otras dependencias de la aplicación.
Webroot Webroot almacena todos los archivos que desea que sean accesibles públicamente.
Compuertas La carpeta bin contiene los ejecutables de la consola Cake.
Troncos Contiene sus archivos de registro, que dependen de su configuración de registro.
Config La carpeta de configuración almacena los archivos de configuración que usa CakePHP.
Plugins Esta carpeta contiene complementos para la aplicación. es donde se almacenan los complementos que utiliza su aplicación.
Src Contiene una tarea de consola y comandos para administrar su aplicación.

Configuración regional Almacena archivos de cadenas para su internacionalización.

Modelo Contiene las tablas, entidades y comportamientos de su aplicación.

Configuración de CakePHP

CakePHP viene con un único archivo de configuración por defecto. También le permite modificarlo según sus requisitos. Hay una carpeta llamada "config" proporcionada para este propósito.

Nombre de la variable Descripción
Depurar Le permite cambiar la salida de depuración de CakePHP.
Aplicación.espacio de nombres Te ayuda a encontrar clases de aplicaciones a continuación.
App.baseUrl Quite el comentario de esta palabra clave cuando no desee utilizar mod_rewrite de Apache con CakePHP.
codificación de aplicaciones Este comando le permite definir qué codificación utiliza su aplicación.
base de aplicaciones Es un directorio base en el que reside la aplicación. Si es falso, se detectará automáticamente.
Aplicación.fullBaseUrl Nombre de dominio calificado
aplicación.webroot Es un directorio webroot.
Aplicación.wwwRoot La ruta del archivo a webroot.
App.jsBaseUrl Ruta al directorio público js.
Rutas de aplicación Configure rutas para recursos no basados ​​en clases.
Aplicación.cssBaseUrl Es una ruta web al directorio css público en webroot.
Seguridad.sal Es una cadena aleatoria utilizada en hash.
Marca de tiempo del activo Esta variable le permite agregar una marca de tiempo cuando utiliza los ayudantes adecuados.

Cake: convenciones de nomenclatura PHP

Cake sigue la idea de convención sobre configuración. El método de convención de nomenclatura le permite organizar el funcionamiento de la aplicación web. En este método, más de una palabra en el nombre debe estar separada por "_" al nombrar el archivo y en casos camel al nombrar la clase.

Las partes de MVC deben seguir la siguiente sintaxis:

Nombre de archivo Nombre de la clase Nombre de clase base Ubicación
Modelo Nombre de archivo
Forma singular del nombre de la tabla con extensión .php, por ejemplo: order.php
El nombre del archivo en un caso Camel, por ejemplo: Orden modelo de aplicación /aplicación/modelos
Regulador tablename_controller con extensión .php, por ejemplo: ordcrs_controllcr.php El nombre de la tabla se añade Controlador, por ejemplo: OrdcrsController controlador de aplicaciones /aplicación/controladores
Ver El nombre de la acción en el controlador con extensión .ctp, por ejemplo: add.ctp No hay clases; una vista c Etiquetas HTML y PHP. ' /app/vuews/nombre del controlador

Configuración de bases de datos

CakePHP le permite configurar la base de datos en config/aplicación.php archivo. Proporciona una conexión predeterminada con los parámetros proporcionados que puede modificar según su elección.

Los parámetros importantes se detallan a continuación:

Base de datos Nombre de la base de datos
puerto (opcional)
codificación
El puerto TCP o socket Unix utilizado para conectarse al servidor.
Zona horaria Zona horaria del servidor para configurar.
Esquema Le ayuda a especificar qué esquema puede utilizar.
unix_socket Esta base de datos utilizada por los controladores para conectarse a través de archivos de socket Unix.
clave SSL Es una ruta de archivo al archivo de clave SSL.
certificado_ssl Es una ruta de archivo al archivo del certificado SSL.
ssl_ca Es una ruta de archivo a la autoridad de certificación SSL.
Log Este término le ayuda a realizar el registro de consultas.
En eso Una lista de consultas que deben enviarse al servidor de la base de datos cada vez que se crea la conexión.
Establezca en verdadero si desea utilizar palabras reservadas o caracteres especiales

¿Cómo funciona MVC en CakePHP?

Ahora, aprenderemos cómo funciona MVC en CakePHP en este tutorial del marco de CakePHP.

Es una forma dinámica de construir el mecanismo principal de una aplicación web. El modelo, la vista y el controlador se separan entre sí.

MVC architectura en CakePHP
MVC architectura en CakePHP

Cake PHP divide las operaciones en tres partes:

  • Modelos: se utilizan para todas las interacciones de bases de datos.
  • Vistas: Se utiliza para todas las salidas y visualizaciones.
  • Controladores: Se utilizan para controlar el flujo de la aplicación.

Estos son los pasos para usar MVC. architecnología en CakePHP:

Paso 1) El cliente o usuario interactúa con la vista.

Paso 2) Ver el controlador de alertas del evento específico.

Paso 3) Envía una solicitud de base de datos al modelo y el controlador actualiza el modelo.

Paso 4) El modelo alerta a la vista de que ha cambiado.

Paso 5) View recibe datos del modelo y se actualiza según los datos recibidos.

¿Por qué utilizar MVC?

  • CakePHP MVC le ayuda a separar la lógica empresarial de la presentación y la recuperación de datos.
  • Un sitio está dividido en secciones lógicas que puedes gobernar con un controlador específico.
  • Al probar y depurar una aplicación, los desarrolladores le ayudan a localizar y corregir errores sin tener que completar la depuración.tails del código.

Desventajas de usar el marco CakePHP

  • La documentación de soporte de CakePHP no es tan completa como debería ser.
  • Para utilizar el software CakePHP, el desarrollador necesita actualizar las rutas predeterminadas para crear URL elegantes, lo que supone mucho más trabajo en comparación con otros marcos PHP.
  • Enrutamiento unidireccional de CakePHP en comparación con otros marcos.
  • Aprendiendo PHP El marco no es fácil.
  • Ofrece enrutamiento unidireccional es otra desventaja en comparación con marcos como Ruby on Rails.

Resumen

  • CakePHP es un marco de código abierto que ayuda a facilitar mucho el desarrollo y mantenimiento de aplicaciones PHP.
  • CakePHP permite a los desarrolladores obtener un control mejorado sobre la base de datos y las consultas SQL.
  • Fue desarrollado por Michal Tatarynowicz el 15 de abril de 2005.
  • MVC archiLa tecnología y la validación integrada son las características más importantes de CakePHP.
  • CakePHP viene con un único archivo de configuración por defecto que le permite modificarlo según sus requisitos.
  • El método de convención de nombres de CakePHP le permite organizar el funcionamiento de la aplicación web.
  • CakePHP le permite configurar la base de datos en el archivo config/app.php.
  • Cake PHP divide las operaciones MVC en tres partes:
  • Modelos: se utilizan para todas las interacciones de la base de datos, Vistas: se utilizan para todos los resultados y pantallas, Controladores: se utilizan para controlar el flujo de la aplicación
  • La mayor ventaja de usar MVC en CakePHP es que le ayuda a separar la lógica empresarial de la presentación y la recuperación de datos.
  • El mayor inconveniente de CakePHP es que la documentación de soporte de CakePHP no es tan completa como debería ser.