Tutorial PHP para principiantes: qué es, para qué sirve y cómo empezar a programar

Si utilizas WordPress, WooCommerce o administras páginas web, probablemente llevas bastante tiempo utilizando PHP aunque nunca hayas escrito una sola línea de este lenguaje.

Aparece constantemente:

“Actualiza la versión de PHP.”

“Este plugin requiere PHP 8.x.”

“Error fatal de PHP.”

“Aumenta el límite de memoria de PHP.”

“Este código tienes que añadirlo en PHP.”

Pero ¿qué es exactamente PHP y qué hace cuando alguien entra en nuestra página?

En esta guía voy a explicarlo desde cero, pensando especialmente en alguien que viene del mundo webmaster y quiere empezar a entender qué ocurre realmente detrás de una web.

¿Qué es PHP?

PHP es un lenguaje de programación utilizado principalmente en el desarrollo web del lado del servidor.

Esta última parte es importante:

lado del servidor.

Cuando alguien entra en una página construida con PHP, normalmente el navegador no recibe directamente el código PHP que existe en nuestro servidor.

El servidor ejecuta ese código y genera una respuesta que posteriormente envía al navegador.

Podemos simplificarlo así:

Usuario → solicita una página → servidor ejecuta PHP → genera respuesta → navegador recibe el resultado

Esto permite crear páginas dinámicas.

Un ejemplo muy sencillo

Imaginemos este código:

<?php

$nombre = "Carlos";

echo "Hola, " . $nombre;

?>

PHP procesa esas instrucciones.

El navegador podría terminar recibiendo simplemente:

Hola, Carlos

El usuario no necesita ejecutar PHP en su ordenador.

El código se ha procesado en el servidor.

¿Para qué sirve PHP?

PHP puede utilizarse para muchísimas tareas relacionadas con aplicaciones web.

Por ejemplo:

  • Procesar formularios.

  • Consultar bases de datos.

  • Crear usuarios.

  • Gestionar sesiones.

  • Generar páginas dinámicas.

  • Procesar información.

  • Crear APIs.

  • Gestionar archivos.

  • Realizar autenticación.

  • Enviar información a otros servicios.

  • Construir aplicaciones completas.

Y, por supuesto, PHP tiene una presencia enorme en el ecosistema WordPress.

WordPress utiliza PHP

Esta probablemente sea la razón por la que muchos webmasters terminamos encontrándonos con PHP.

WordPress utiliza PHP para gran parte de su funcionamiento.

Cuando instalamos:

  • WordPress.

  • Plugins.

  • Themes.

  • WooCommerce.

estamos trabajando con software donde PHP tiene un papel fundamental.

Esto significa que aprender aunque sea PHP básico puede ayudarnos muchísimo a entender WordPress.

¿Necesito saber PHP para utilizar WordPress?

No.

Puedes administrar perfectamente muchas páginas WordPress sin saber programar en PHP.

Pero conocerlo proporciona ventajas.

Por ejemplo, empiezas a comprender mejor:

  • Qué hace un plugin.

  • Cómo funciona un theme.

  • Qué significa un error PHP.

  • Qué es una función.

  • Qué ocurre en functions.php.

  • Cómo funcionan determinados hooks.

  • Por qué aparece un error fatal.

  • Qué implica cambiar de versión de PHP.

No necesitas convertirte en desarrollador profesional para beneficiarte de estos conocimientos.

PHP y HTML no son lo mismo

Esta diferencia es fundamental.

HTML describe principalmente la estructura del contenido que recibirá el navegador.

Por ejemplo:

<h1>Mi página web</h1>

<p>Bienvenido a mi página.</p>

PHP puede generar ese HTML dinámicamente.

Por ejemplo:

<?php

$titulo = "Mi página web";

echo "<h1>" . $titulo . "</h1>";

?>

El servidor procesa PHP y termina enviando HTML al navegador.

¿Dónde se ejecuta PHP?

Normalmente en el servidor donde tenemos alojada nuestra aplicación.

Por eso cuando contratamos hosting encontramos opciones relacionadas con:

versión de PHP

memory_limit

max_execution_time

upload_max_filesize

y otras configuraciones.

Nuestro servidor necesita disponer de un entorno capaz de ejecutar PHP.

¿Qué extensión tienen los archivos PHP?

Normalmente:

.php

Por ejemplo:

index.php

login.php

contacto.php

En WordPress encontraremos multitud de archivos PHP dentro del núcleo, plugins y themes.

Pero una advertencia:

no modificaría archivos de WordPress aleatoriamente para aprender.

Podemos romper fácilmente una instalación.

Es mejor practicar primero en un entorno local o proyecto de prueba.

Tu primer archivo PHP

Podríamos crear:

hola.php

con:

<?php

echo "Hola mundo";

?>

Cuando ese archivo se ejecuta mediante un servidor configurado con PHP, obtendremos:

Hola mundo

Probablemente sea uno de los primeros ejemplos que realiza casi cualquiera cuando empieza.

¿Qué hace echo?

echo permite mostrar contenido.

Por ejemplo:

<?php

echo "Hola DSForo";

?>

La salida sería:

Hola DSForo

También podemos utilizar variables.

Variables en PHP

Una variable nos permite almacenar información.

En PHP suelen comenzar con $.

Por ejemplo:

<?php

$nombre = "Laura";
$edad = 30;

echo $nombre;

?>

Aquí tenemos dos variables:

$nombre

y:

$edad

Podemos utilizarlas posteriormente en nuestro programa.

Trabajar con textos

Los textos o strings pueden almacenarse de esta forma:

$dominio = "dsforo.com";

Después podemos combinar información:

echo "Mi dominio es " . $dominio;

El punto . se utiliza para concatenar cadenas en PHP.

El resultado sería:

Mi dominio es dsforo.com

Números y operaciones

También podemos trabajar con números.

$precio = 20;
$cantidad = 3;

$total = $precio * $cantidad;

echo $total;

Resultado:

60

A partir de conceptos tan sencillos podemos empezar a construir lógica mucho más interesante.

Condicionales

Una aplicación necesita tomar decisiones.

Para eso podemos utilizar estructuras como if.

Ejemplo:

$edad = 25;

if ($edad >= 18) {
    echo "Es mayor de edad";
}

También podemos utilizar else:

if ($edad >= 18) {
    echo "Es mayor de edad";
} else {
    echo "Es menor de edad";
}

Nuestro programa ejecutará un bloque u otro dependiendo de la condición.

Comparaciones

Cuando empezamos con PHP conviene prestar atención a operadores como:

==
===
!=
>
<
>=
<=

Especialmente a la diferencia entre:

=

y:

==

El primero se utiliza para asignar un valor.

Por ejemplo:

$numero = 10;

Mientras que una comparación podría ser:

if ($numero == 10) {
    echo "El número es 10";
}

Confundir asignación y comparación es uno de esos errores clásicos cuando estamos aprendiendo.

Arrays

Un array nos permite almacenar diferentes valores.

Por ejemplo:

$lenguajes = [
    "PHP",
    "JavaScript",
    "Python"
];

Podemos acceder a un elemento:

echo $lenguajes[0];

Resultado:

PHP

Los arrays aparecen constantemente en PHP y WordPress.

Arrays asociativos

También podemos utilizar claves descriptivas:

$usuario = [
    "nombre" => "Ana",
    "email" => "ana@ejemplo.com",
    "activo" => true
];

Después:

echo $usuario["nombre"];

obtendría:

Ana

Este tipo de estructuras resulta muy útil para organizar información.

Bucles

Imaginemos que tenemos varios productos y queremos mostrarlos todos.

En lugar de repetir manualmente el mismo código podemos utilizar un bucle.

Por ejemplo:

$productos = [
    "Teclado",
    "Ratón",
    "Monitor"
];

foreach ($productos as $producto) {
    echo $producto;
}

foreach aparece muchísimo cuando trabajamos con colecciones de datos.

Funciones

Una función permite agrupar lógica que podemos reutilizar.

Por ejemplo:

function saludar($nombre) {
    return "Hola, " . $nombre;
}

echo saludar("Laura");

Resultado:

Hola, Laura

En lugar de repetir el mismo código constantemente, podemos encapsular determinadas operaciones dentro de funciones.

Cuando empiezas a mirar código de WordPress encontrarás funciones por todas partes.

Parámetros y valores de retorno

En nuestro ejemplo:

function saludar($nombre) {
    return "Hola, " . $nombre;
}

$nombre es un parámetro.

return devuelve el resultado.

Podemos utilizar la función con diferentes valores:

saludar("Laura");
saludar("Pedro");
saludar("Ana");

La lógica permanece igual.

Cambia la información que recibe.

¿Qué significa null?

null representa la ausencia de un valor.

Por ejemplo:

$telefono = null;

Puede resultar útil cuando una variable todavía no tiene información.

Pero debemos distinguir entre:

  • null

  • cadena vacía

  • 0

  • false

No representan necesariamente lo mismo.

Estas diferencias empiezan a ser importantes cuando nuestra aplicación crece.

PHP y formularios

Aquí empieza a ponerse interesante para desarrollo web.

Imaginemos un formulario:

<form method="post">
    <input type="text" name="nombre">
    <button type="submit">Enviar</button>
</form>

PHP puede recibir la información enviada y procesarla.

Conceptualmente podríamos acceder al valor mediante:

$_POST["nombre"]

Pero aquí debemos introducir inmediatamente una advertencia importante.

Nunca confíes directamente en los datos introducidos por el usuario

Si alguien puede enviar información a nuestra aplicación, debemos tratarla como potencialmente no fiable.

Esto incluye:

  • Formularios.

  • Parámetros de URL.

  • Cookies.

  • Cabeceras.

  • Archivos.

  • Datos procedentes de APIs.

No asumiría que porque hemos creado un campo llamado:

nombre

el usuario introducirá necesariamente un nombre normal.

Tenemos que validar los datos.

Validar y escapar no son exactamente lo mismo

Son conceptos que conviene aprender desde el principio.

Validar consiste en comprobar si un dato cumple las condiciones que necesitamos.

Por ejemplo:

¿Es realmente un email?

¿Está dentro del rango permitido?

¿Tiene el formato correcto?

Escapar está relacionado con preparar correctamente la salida para el contexto donde vamos a utilizarla.

Aprender estos conceptos desde el principio evita adquirir hábitos inseguros.

PHP y bases de datos

Una de las funciones más habituales de PHP es comunicarse con una base de datos.

Podemos tener:

usuario → formulario → PHP → base de datos

Por ejemplo, cuando alguien crea una cuenta:

  1. Envía el formulario.

  2. PHP recibe los datos.

  3. Los valida.

  4. Guarda la información necesaria.

  5. Genera una respuesta.

Lo mismo ocurre cuando consultamos productos, artículos, pedidos o usuarios.

No construyas consultas SQL concatenando datos del usuario

Imaginemos algo conceptualmente parecido a:

$sql = "SELECT * FROM usuarios WHERE email = '" . $_POST["email"] . "'";

Utilizar directamente información controlada por el usuario dentro de una consulta puede provocar vulnerabilidades.

En aplicaciones reales debemos utilizar mecanismos seguros como consultas preparadas y parámetros.

La seguridad no debería añadirse al final del proyecto.

Debe formar parte de cómo escribimos el código.

PDO

Cuando empiezas a investigar cómo conectar PHP con bases de datos seguramente encontrarás PDO.

PDO proporciona una interfaz para trabajar con diferentes sistemas de bases de datos desde PHP.

Un ejemplo conceptual de consulta preparada podría tener una estructura como:

$stmt = $pdo->prepare(
    "SELECT * FROM usuarios WHERE email = :email"
);

$stmt->execute([
    "email" => $email
]);

No copiaría un fragmento aislado como este directamente a producción sin entender la conexión, gestión de errores y resto de la aplicación.

Pero merece la pena familiarizarse con este patrón.

PHP y MySQL

Esta combinación ha sido extremadamente habitual en desarrollo web.

Muchas aplicaciones utilizan:

PHP + MySQL/MariaDB

WordPress es el ejemplo más cercano para muchos webmasters.

Aprender SQL junto con PHP puede resultar especialmente útil porque empezamos a entender cómo nuestra aplicación almacena y recupera información.

PHP y APIs

PHP también puede utilizarse para consumir APIs externas.

Por ejemplo, nuestra aplicación podría consultar:

  • Una API de pagos.

  • Una API meteorológica.

  • Una API de inteligencia artificial.

  • Una API de transporte.

  • Una API de email.

También podemos crear nuestra propia API utilizando PHP.

Si todavía no tienes claro cómo funciona esta parte, en DSForo ya tenemos publicada la guía qué es una API y para qué sirve, que explica requests, responses, endpoints, JSON y otros conceptos desde cero.

PHP y JSON

Cuando trabajamos con APIs encontraremos JSON constantemente.

PHP puede convertir estructuras a JSON y también interpretar respuestas recibidas en ese formato.

Por ejemplo:

$usuario = [
    "nombre" => "Laura",
    "activo" => true
];

echo json_encode($usuario);

Podría generar una respuesta JSON que otra aplicación pueda interpretar.

Aquí empieza a verse cómo PHP puede funcionar no solamente para generar páginas HTML, sino también como backend para otras aplicaciones.

¿PHP sirve únicamente para WordPress?

No.

WordPress es importantísimo dentro del ecosistema PHP, pero PHP puede utilizarse para desarrollar aplicaciones completamente independientes.

Podemos crear:

  • APIs.

  • Paneles.

  • Aplicaciones SaaS.

  • Sistemas internos.

  • Ecommerce.

  • Herramientas.

  • Plataformas.

  • Backends.

También existen frameworks que proporcionan estructuras completas para desarrollar aplicaciones.

¿Qué es un framework?

Un framework proporciona herramientas, convenciones y componentes para ayudarnos a construir aplicaciones.

En lugar de desarrollar absolutamente todo desde cero, podemos trabajar sobre una estructura preparada para resolver problemas habituales.

En PHP encontraremos diferentes frameworks.

Pero si estás empezando desde cero, yo no tendría demasiada prisa por aprender uno.

Primero intentaría comprender bien PHP básico.

Aprende primero el lenguaje

Antes de depender completamente de un framework intentaría entender:

  • Variables.

  • Condicionales.

  • Arrays.

  • Bucles.

  • Funciones.

  • Clases.

  • Errores.

  • HTTP.

  • Formularios.

  • Bases de datos.

  • Seguridad básica.

Después, cuando utilicemos un framework, entenderemos mucho mejor qué está haciendo por nosotros.

Programación orientada a objetos

A medida que avancemos encontraremos conceptos como:

  • Clases.

  • Objetos.

  • Métodos.

  • Propiedades.

  • Herencia.

  • Interfaces.

Por ejemplo:

class Usuario
{
    public string $nombre;

    public function saludar(): string
    {
        return "Hola " . $this->nombre;
    }
}

Al principio puede parecer bastante más complicado que escribir unas pocas funciones.

No intentaría aprender toda la programación orientada a objetos durante el primer día.

Primero dominaría los fundamentos.

¿Qué es Composer?

Cuando avances con PHP aparecerá Composer constantemente.

Composer es una herramienta utilizada para gestionar dependencias de proyectos PHP.

En lugar de descargar manualmente librerías y copiarlas dentro de nuestro proyecto, podemos declarar las dependencias que necesitamos y gestionarlas de una forma mucho más organizada.

Entender Composer se vuelve especialmente importante cuando empezamos a trabajar con aplicaciones PHP modernas.

No descargues librerías de cualquier sitio

Si nuestro proyecto necesita una dependencia, debemos prestar atención a su procedencia y mantenimiento.

Instalar código externo significa ejecutar código escrito por terceros dentro de nuestra aplicación.

Comprobaría:

  • Proyecto oficial.

  • Mantenimiento.

  • Documentación.

  • Dependencias.

  • Historial.

  • Versiones.

La cadena de dependencias también forma parte de la seguridad.

Versiones de PHP

Otra cosa que confunde bastante a los webmasters.

PHP evoluciona y existen diferentes versiones.

Nuestro hosting puede permitir seleccionar una versión concreta.

Pero no cambiaría de versión a ciegas en una web importante.

Antes comprobaría:

  • Aplicación.

  • WordPress, si corresponde.

  • Plugins.

  • Theme.

  • Código personalizado.

  • Dependencias.

Una versión nueva puede introducir mejoras, pero nuestro código también debe ser compatible.

¿Por qué una actualización de PHP puede romper una web?

Porque una aplicación puede utilizar funciones, comportamientos o código que ya no sean compatibles con la nueva versión.

Esto ocurre especialmente en proyectos antiguos que llevan mucho tiempo sin actualizarse.

Por eso en una web importante realizaría:

backup → entorno de pruebas → actualización → comprobaciones → producción

en lugar de cambiar directamente y esperar que todo funcione.

Los errores de PHP pueden ayudarnos

Cuando estamos aprendiendo, un error puede parecer simplemente:

No funciona.

Pero los mensajes de error contienen información muy útil.

Pueden indicarnos:

  • Archivo.

  • Línea.

  • Tipo de error.

  • Función implicada.

Aprender a leer errores es una de las habilidades más importantes en programación.

No intentaría solucionar todo copiando inmediatamente el mensaje en una IA.

Primero intentaría entender qué está diciendo.

Warning, Notice, Deprecated y Fatal Error

Podemos encontrarnos diferentes tipos de mensajes.

No todos tienen exactamente la misma gravedad.

Un Fatal Error, por ejemplo, puede impedir que el programa continúe ejecutándose.

Los avisos de funciones obsoletas pueden indicarnos que determinado código debería actualizarse pensando en compatibilidad futura.

Cuando mantenemos una web antigua, estos mensajes pueden ayudarnos a detectar deuda técnica.

No muestres errores sensibles en producción

Durante desarrollo puede resultar útil mostrar errores detallados.

Pero en una aplicación pública debemos tener cuidado.

Un mensaje puede revelar:

  • Rutas del servidor.

  • Nombres de archivos.

  • Consultas.

  • Estructura interna.

  • Información técnica.

En producción suele ser preferible registrar los errores de forma segura y mostrar al usuario un mensaje apropiado.

Logs

Los registros o logs nos ayudan a investigar qué ha ocurrido.

Si una aplicación falla únicamente algunas veces, un buen sistema de logs puede ser muchísimo más útil que intentar reproducir el problema a ciegas.

Podemos registrar información como:

  • Fecha.

  • Error.

  • Contexto.

  • Operación.

Pero tampoco deberíamos guardar alegremente contraseñas, tokens u otros secretos dentro de los logs.

php.ini

Cuando administramos hosting podemos encontrarnos referencias a php.ini.

Es uno de los mecanismos mediante los que puede configurarse PHP.

Ahí aparecen ajustes relacionados con límites y comportamiento del entorno.

Por ejemplo, dependiendo de la instalación podemos encontrarnos parámetros relacionados con:

  • Memoria.

  • Tamaño de subida.

  • Tiempo de ejecución.

  • Registro de errores.

No modificaría valores aleatoriamente porque un tutorial diga:

Pon esto en 999999.

Primero entendería qué problema estamos intentando solucionar.

memory_limit

Este parámetro establece un límite de memoria que puede utilizar un proceso PHP en determinadas condiciones.

Cuando WordPress muestra problemas relacionados con memoria, a veces encontramos tutoriales recomendando aumentar el valor.

Puede ser necesario.

Pero también preguntaría:

¿por qué estamos consumiendo tanta memoria?

Aumentar el límite puede solucionar el síntoma sin solucionar la causa.

max_execution_time

Está relacionado con cuánto tiempo puede ejecutarse un script antes de alcanzar determinado límite, según la configuración y el entorno.

Una importación grande puede necesitar más tiempo.

Pero un script que tarda eternamente también puede indicar un problema.

No convertiría todos los límites en infinitos para evitar investigar.

PHP y rendimiento

PHP puede formar parte del rendimiento general de nuestra web, pero no es la única pieza.

Tenemos:

servidor + PHP + aplicación + base de datos + caché + servicios externos + frontend

Si WordPress tarda mucho en responder, necesitamos identificar dónde está el cuello de botella.

Cambiar una única configuración no garantiza resolverlo.

PHP y caché

En aplicaciones web podemos evitar repetir determinados trabajos continuamente mediante diferentes estrategias de caché.

Si generamos exactamente la misma información miles de veces, quizá no sea necesario ejecutar todo el proceso desde cero para cada visita.

Dependiendo de nuestra arquitectura podemos utilizar diferentes niveles de caché.

Pero la caché también introduce complejidad.

Especialmente cuando necesitamos invalidarla correctamente.

El clásico problema: “he cambiado algo y no aparece”

Cuando trabajamos con diferentes sistemas de caché podemos modificar código y seguir viendo una versión anterior.

Entonces pensamos:

PHP no está ejecutando mi cambio.

Y quizá estamos viendo una respuesta almacenada.

Cuando depuramos conviene saber qué capas de caché existen en nuestro proyecto.

PHP y seguridad

Si queremos desarrollar aplicaciones reales, aprender seguridad básica es obligatorio.

Algunos temas que estudiaría pronto son:

  • Validación de entradas.

  • Escape de salidas.

  • SQL injection.

  • XSS.

  • CSRF.

  • Gestión de sesiones.

  • Contraseñas.

  • Permisos.

  • Subida de archivos.

  • Gestión de secretos.

No hace falta convertirse inmediatamente en especialista en ciberseguridad.

Pero sí evitar los errores más básicos.

Nunca almacenes contraseñas como texto plano

Si nuestra aplicación gestiona usuarios, no deberíamos guardar:

contraseña = pepe123

directamente en la base de datos.

PHP proporciona mecanismos específicamente diseñados para trabajar con hashes de contraseñas.

Por ejemplo, encontraremos funciones como:

password_hash()

y:

password_verify()

No inventaría mi propio sistema criptográfico.

Utilizaría mecanismos ampliamente establecidos y documentación actualizada.

Cuidado con las subidas de archivos

Permitir que un usuario suba archivos a nuestro servidor puede convertirse en una funcionalidad delicada.

No confiaría únicamente en:

“el archivo termina en .jpg”

para decidir que es seguro.

Necesitamos pensar en:

  • Tipo.

  • Tamaño.

  • Nombre.

  • Ubicación.

  • Permisos.

  • Procesamiento.

  • Acceso posterior.

Una subida insegura puede convertirse en un problema serio.

PHP y sesiones

Las sesiones permiten mantener información asociada a un usuario entre diferentes peticiones.

Por ejemplo:

usuario inicia sesión → navega por diferentes páginas → aplicación sabe quién es

Este mecanismo parece sencillo desde fuera, pero implica decisiones de seguridad importantes.

Cuando construyamos autenticación real debemos estudiar correctamente gestión de sesiones, cookies y permisos.

No construyas tu propio sistema de login solamente para “hacerlo diferente”

Crear un formulario de usuario es fácil.

Crear un sistema de autenticación robusto requiere bastante más trabajo.

Para proyectos reales aprovecharía componentes y frameworks maduros cuando sea apropiado.

Aprender construyendo un login sencillo puede ser útil.

Utilizar nuestro primer experimento como sistema de autenticación de una aplicación crítica ya es otra cosa.

PHP en local

Para aprender no necesitamos modificar directamente nuestra web pública.

Podemos configurar un entorno de desarrollo local en nuestro ordenador.

Así podemos:

  • Romper cosas.

  • Probar código.

  • Crear bases de datos.

  • Mostrar errores.

  • Experimentar.

sin afectar a usuarios reales.

Esto es especialmente recomendable si administramos una web que ya recibe tráfico.

Desarrollo y producción deberían estar separados

Una mala práctica sería editar directamente archivos críticos de una web pública cada vez que queremos probar algo.

Una estructura más profesional separa:

desarrollo

pruebas/staging

producción

No todos los pequeños proyectos necesitan una infraestructura empresarial gigantesca.

Pero al menos evitaría experimentar sobre la única copia funcional de una web importante.

Git

Cuando empezamos a programar seriamente también merece la pena aprender control de versiones.

Git nos permite registrar cambios en nuestro código y trabajar de una forma mucho más organizada.

Si algo deja de funcionar podemos investigar qué cambió.

También facilita trabajar con otras personas.

No esperaría a tener un proyecto gigantesco para aprender los fundamentos.

No subas secretos al repositorio

Otra regla importantísima.

No deberíamos incluir en un repositorio público:

  • Contraseñas.

  • API keys.

  • Credenciales de bases de datos.

  • Tokens.

  • Secretos privados.

Aunque posteriormente eliminemos el archivo, el secreto podría permanecer en el historial.

Si una credencial se ha expuesto, debemos considerar rotarla.

¿PHP está muerto?

Esta pregunta lleva apareciendo desde hace años.

Y para alguien que llega nuevo puede generar bastante confusión.

En lugar de decidir qué lenguaje aprender basándonos en titulares del tipo:

X está muerto.

miraría qué quiero construir.

Si trabajamos con WordPress, WooCommerce o una infraestructura donde PHP tiene un papel central, aprender PHP puede ser extremadamente útil.

La pregunta práctica debería ser:

¿me ayuda esta tecnología a construir o mantener los proyectos que me interesan?

¿PHP o JavaScript?

No necesariamente tenemos que elegir uno para toda nuestra carrera.

JavaScript tiene un papel fundamental en el navegador y también puede utilizarse en servidor mediante diferentes tecnologías.

PHP está muy orientado históricamente al desarrollo web del lado servidor.

Aprender ambos puede tener muchísimo sentido.

De hecho, en muchas aplicaciones encontraremos:

PHP en backend

y:

JavaScript en frontend

trabajando juntos.

¿PHP o Python?

Otra comparación habitual.

Python tiene un ecosistema enorme y se utiliza en muchos ámbitos diferentes.

PHP tiene una presencia especialmente importante en desarrollo web.

La elección depende de lo que queramos hacer.

Si tu objetivo inmediato es modificar WordPress y entender mejor sus plugins y themes, PHP tiene una relación directa con ese trabajo.

Si tu objetivo es otro, quizá tenga sentido estudiar diferentes opciones.

No intentes aprender cinco lenguajes simultáneamente

Cuando empezamos vemos:

PHP.

JavaScript.

Python.

Go.

Rust.

Java.

Y queremos aprenderlos todos.

Yo escogería primero uno relacionado con el tipo de proyecto que quiero construir.

Aprendería los fundamentos de programación.

Después resulta mucho más sencillo aprender otros lenguajes porque muchos conceptos se repiten.

Un buen primer proyecto PHP

No empezaría intentando construir un nuevo Facebook.

Haría algo pequeño.

Por ejemplo:

gestor de tareas

con:

  • Crear tarea.

  • Listar tareas.

  • Editar tarea.

  • Marcar completada.

  • Eliminar tarea.

Este proyecto nos obliga a practicar:

  • Formularios.

  • PHP.

  • Base de datos.

  • CRUD.

  • Validación.

  • HTML.

  • Errores.

Y es suficientemente pequeño para terminarlo.

¿Qué significa CRUD?

CRUD representa cuatro operaciones básicas:

Create

Crear.

Read

Leer.

Update

Actualizar.

Delete

Eliminar.

Muchísimas aplicaciones consisten, en parte, en realizar estas operaciones sobre diferentes tipos de información.

Usuarios.

Productos.

Pedidos.

Artículos.

Comentarios.

Tareas.

Aprender a crear un CRUD sencillo es un ejercicio excelente.

Después crearía algo que realmente vaya a utilizar

Cuando ya conozcamos los fundamentos, construiría una herramienta pequeña para resolver un problema propio.

Puede ser:

  • Organizador.

  • Dashboard.

  • Sistema de notas.

  • Herramienta SEO interna.

  • Inventario.

  • Gestor de enlaces.

  • Pequeña API.

Cuando nosotros mismos utilizamos el proyecto aparecen problemas reales que los tutoriales no siempre enseñan.

Ruta para aprender PHP desde cero

Si empezara hoy, seguiría aproximadamente este orden:

1. Sintaxis básica

Variables, tipos y operadores.

2. Condicionales

if, else, comparaciones.

3. Arrays

Simples y asociativos.

4. Bucles

foreach, for, etc.

5. Funciones

Parámetros y retornos.

6. Formularios y HTTP

GET y POST.

7. Bases de datos

SQL, PDO y consultas preparadas.

8. Seguridad

Validación, escape y autenticación.

9. Programación orientada a objetos

Clases y objetos.

10. Composer

Dependencias.

11. APIs

Consumir y crear servicios.

12. Proyecto completo

Construir algo sin seguir un tutorial paso por paso.

¿Hace falta memorizar todo?

No.

Programar no consiste en recordar cada función existente.

Lo importante es entender conceptos y saber encontrar documentación cuando la necesitamos.

Incluso desarrolladores con años de experiencia consultan constantemente documentación.

Intentaría memorizar fundamentos mediante práctica.

No listas interminables de funciones.

Leer código también enseña

Una vez tengas una base mínima, abrir pequeños proyectos y estudiar cómo están construidos puede ser muy útil.

Pregúntate:

¿Dónde empieza la aplicación?

¿Cómo recibe datos?

¿Dónde valida?

¿Cómo consulta la base?

¿Cómo genera la respuesta?

Al principio entenderás muy poco.

Con el tiempo empezarás a reconocer patrones.

No copies código que no entiendes en una web importante

Actualmente podemos conseguir código en segundos mediante buscadores, foros o inteligencia artificial.

Eso es fantástico.

Pero también facilita pegar:

// 80 líneas que no entiendo

dentro de una web en producción.

Antes de ejecutar código intentaría entender al menos:

  • Qué recibe.

  • Qué modifica.

  • Qué devuelve.

  • A qué archivos accede.

  • Si consulta la base.

  • Si utiliza servicios externos.

  • Qué permisos necesita.

Especialmente cuando el código procede de una fuente desconocida.

PHP puede ser una buena puerta de entrada para webmasters

Para alguien que ya utiliza WordPress, PHP tiene una ventaja:

podemos relacionar inmediatamente lo aprendido con herramientas que ya conocemos.

De repente empiezan a tener sentido:

functions.php

los plugins,

los themes,

los errores fatales,

las versiones del servidor,

las consultas,

los hooks,

las APIs.

No hace falta convertirse en desarrollador senior.

Entender qué está ocurriendo ya cambia muchísimo la forma de administrar una web.

Conclusión

PHP es un lenguaje de programación especialmente importante dentro del desarrollo web y sigue siendo una tecnología que cualquier usuario de WordPress termina encontrándose tarde o temprano.

Si estás empezando, no intentaría aprender todo a la vez.

Comenzaría con:

variables → condicionales → arrays → bucles → funciones → formularios → bases de datos → seguridad

y construiría pequeños proyectos.

Después avanzaría hacia programación orientada a objetos, Composer, APIs y frameworks según las necesidades.

Lo importante es pasar cuanto antes de:

leer tutoriales

a:

escribir código.

Aunque al principio solamente consigas mostrar un “Hola mundo”.

Todos empezamos por algo.

¿Utilizáis PHP habitualmente en vuestros proyectos o solamente os encontráis con él al trabajar con WordPress? ¿Qué fue lo que más os costó entender cuando empezasteis?

NormasRangos - 
👍 Me gusta ☆ Guardar ↩ Citar 💬 Iniciar Chat ⚐ Reportar
Todavía no hay respuestas. Sé el primero en iniciar la conversación.

Deja una respuesta

Lectores del tema
1 lector● 0 ahora
Recientes: Sergio
Esta web utiliza cookies propias para su correcto funcionamiento. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Más información
Privacidad