Cómo Usar PHP 8 y MySQL 8 (CRUD)

7 minuto(s)

Al menos hasta la fecha de este tutorial, el lenguaje de programación PHP y la base de datos MySQL.

Han recibiendo nuevas características y por ende la forma de trabajar ha cambiado.

La mejor forma de aprender es practicando, por ello en este tutorial te enseñaré a Cómo Usar PHP 8 y MySQL 8 (CRUD), vamos con ello.

1 Verificamos nuestra versión de PHP y MySQL

Antes de continuar verificamos las versiones con los siguientes comandos:


Ahora pasemos a crear el proyecto.

2. La Base de Datos (MySQL 8)

Mediante la siguiente consulta, creamos una base de datos llamada tienda con tabla sencilla llamada productos, MySQL 8 tiene un mejor manejo de los indices y los caracteres utf8mn4:


Nuestra base de datos y la tabla creada se veria así:

Base de datos y tabla creada en MySQL 8
Uso la herramienta phpMyAdmin para gestionar los datos

Ahora vayamos con el modelo en PHP.

3. Configuración de Conexión

PHP 8 tiene ciertas reglas de oro modernas como el tipado estricto, clases de solo lectura para transferencia de datos y un manejo de errores impecable.

El uso de PDO (PHP Data Objects) es un estándar en PHP 8, lo usaremos con el modo de error por defecto en EXCEPTION, esto es algo que PHP 8 maneja de forma estricta.

Creamos un archivo llamado db.php para nuestra conexión entre PHP y MySQL y agregamos lo siguiente (He colocado comentarios para explicar que hace cada línea de código):

Vayamos con nuestro CRUD.

4. El CRUD (API)

Vamos a crear nuestras tareas CRUD (Create, Read, Update y Delete) en un solo archivo.

No quiero hacer el CRUD muy complejo, para que aprendas poco a poco y no marearte.

Creamos un archivo con el nombre index.php y agregamos lo siguiente (He colocado comentarios en las partes necesarias para explicar que hace ese código):


Listo, ahora pasemos a probar nuestro CRUD.

5. Pruebas del CRUD

Usaré Postman, tu puedes usar tu herramienta favorita.

Estoy trabajando con XAMPP en Windows los cual

5.1 Create (Crear)

Vamos a crear un producto.

Abrimos una pestaña en Postman y seleccionamos el método POST.

Colocamos la URL: http://localhost/xampp/crud-php-8-mysql-8/index.php

Vamos a la pestaña Body, seleccionamos raw y colocamos los datos del producto en formato JSON:


Presionamos el botón Send.

Obtenemos como respuesta un JSON con el ID del producto creado.

Poducto creado correctamente con PHP 8 y MySQL 8
Obtenemos el status del producto como creado

5.2 Read (Leer)

Vamos a leer nuestro producto ingresado.

En Postman elegimos el método GET.

En esta tarea no enviaremos datos en JSON, al menos para nuestro ejemplo no es necesario.

Usamos la misma URL pero al final le pasamos el parámetro id con el id del producto que necesitamos leer: http://localhost/xampp/crud-php-8-mysql-8/index.php?id=1

Presionamos el botón Send.

Obtenemos como respuesta un JSON con todos los datos del producto:

Poducto leído correctamente con PHP 8 y MySQL 8
Si tu producto tiene más campos, los obtendrás sin problemas

5.3 Update (Actualizar)

Para actualizar nuestro producto en Postman elegimos el método PUT que es un estándar.

En la URL colocamos al final el id del poducto que queremos actualizar: http://localhost/xampp/crud-php-8-mysql-8/index.php?id=1

En la pestaña Body, seleccionamos raw y colocamos los datos en formato JSON para actualizar el producto:


Presionamos el botón Send.

Obtenemos como respuesta el status con el mensaje “actualizado”:

Poducto actualizado correctamente con PHP 8 y MySQL 8
Si deseas puedes obtener en la respuesta los datos del producto actualizado

5.4 Delete (Eliminar)

Para esta tarea solo necesitamos enviar en la URL el id del producto que queremos eliminar: http://localhost/xampp/crud-php-8-mysql-8/index.php?id=1

Elegimos el método DELETE.

Presionamos el botón Send.

Y obtenemos como respuesta el status con el mensaje “eliminado”:

Poducto eliminado correctamente con PHP 8 y MySQL 8
Siempre verifica bien si es el id correcto del producto que quieres eliminar

5.5 Listar todos los productos

Si necesitamos obtener todos los productos.

Elegimos el método GET.

Usamos la URL normal: http://localhost/xampp/crud-php-8-mysql-8/index.php

Presionamos el botón Send.

Recibimos como respuesta todos los productos con todos sus campos:

Poductos listados correctamente con PHP 8 y MySQL 8
Puedes especificar que campos debe devolver la API

Ahora te compartiré unos tips para que tu aplicación con PHP 8 y MySQL 8 sea más óptima.

6. Datos Adicionales y Buenas Prácticas

Para que tu CRUD pase de ser un ejercicio a un proyecto profesional, considera estos puntos clave:

  • Seguridad de Datos: Aunque usamos sentencias preparadas, siempre es recomendable limpiar las entradas con filter_var() para evitar ataques XSS si decides mostrar estos datos en un HTML.
  • Códigos de Estado HTTP: En este tutorial usamos 200 OK (por defecto), 400 Bad Request, 404 Not Found y 405 Method Not Allowed. En una API profesional, el método POST debería devolver un código 201 Created.
  • CORS (Cross-Origin Resource Sharing): Si planeas conectar este backend con un frontend en React, Angular o Vue, deberás configurar los encabezados CORS para permitir peticiones desde dominios externos.
  • Manejo de Variables de Entorno: Por seguridad, nunca subas tus credenciales de base de datos (root, contraseñas) a repositorios como GitHub. Usa archivos .env para proteger esta información sensible.

7. Conclusión

Dominar la integración entre PHP 8 y MySQL 8 es una habilidad fundamental para cualquier desarrollador backend en la actualidad. Como hemos visto, la introducción de la expresión match, el tipado estricto en las funciones y el uso robusto de PDO no solo hacen que nuestro código sea más limpio y elegante, sino también mucho más seguro y fácil de mantener.

Este CRUD es el punto de partida perfecto. A partir de aquí, puedes escalar añadiendo autenticación con JWT (JSON Web Tokens), subida de imágenes de productos o incluso paginación para manejar miles de registros de forma eficiente.

¡La mejor forma de aprender es no dejar de picar código!

MySQL PHP 29-01-2026 29-01-2026 Crear un PostEventos DevsForo

Sobre el Autor

Juan Castro

Juan Castro — Ingeniero de Software con más de 17 años de experiencia en desarrollo, ia, ml, devops, data science, ciberseguridad y tecnología.

Certificados oficiales:
Certificado Microsoft Azure Fundamentals Certificado AWS Designing Event-Driven Architectures Certificado Google Desarrollo de Aplicaciones Móviles

Ver más

IA