Crear carpeta si no existe: la forma correcta en PHP
¡Hola a todos! Soy nuevo en PHP y estoy intentando hacer un CMS simple en WordPress. Necesito que al subir imágenes al servidor se cree un directorio por fecha, por ejemplo /uploads/2024/03/. Pero constantemente recibo el error "failed to open stream: No such file or directory" si las carpetas aún no existen.
Aquí está mi código actual:
$path = '/var/www/html/uploads/' . date('Y/m');
$file = $path . '/image.jpg';
// Intento guardar el archivo
file_put_contents($file, $data);
Ya intenté usar mkdir($path) antes de escribir, pero igual la carpeta no se crea. Busqué en Google y dicen que hay que verificar la existencia. Añadí la comprobación:
if (!file_exists($path)) {
mkdir($path);
}
Pero ahora el error "mkdir():