Skip to content

Instantly share code, notes, and snippets.

@parzibyte
Created February 1, 2019 23:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save parzibyte/91228be2d572c1b56d19e0dcbbe32cd4 to your computer and use it in GitHub Desktop.
Save parzibyte/91228be2d572c1b56d19e0dcbbe32cd4 to your computer and use it in GitHub Desktop.
<?php
/*
Combinar documentos PDF con PHP
y libmergepdf
Método 3: Escribir en archivo
@author parzibyte
*/
# Cargar librerías
require_once "vendor/autoload.php";
use iio\libmergepdf\Merger;
# Ruta de los documentos
$documentos = ["cotizacion.pdf", "parzibyte.pdf", "documento.pdf"];
# Crear el "combinador"
$combinador = new Merger;
# Agregar archivo en cada iteración
foreach ($documentos as $documento) {
$combinador->addFile($documento);
}
# Y combinar o unir
$salida = $combinador->merge();
/*
Ahora la salida la mostramos directamente en la petición,
y enviamos unos encabezados para que el navegador
lo interprete
*/
# Este nombre se pondrá como título o nombre del documento
$nombreArchivo = "combinado.pdf";
# Escribir salida en el nombre del archivo
# Recomiendo: https://parzibyte.me/blog/2018/07/10/trabajando-con-archivos-y-carpetas-en-php-crud/
$bytesEscritos = file_put_contents($nombreArchivo, $salida);
if ($bytesEscritos !== false) {
echo "Correcto. Se escribieron $bytesEscritos bytes en $nombreArchivo";
} else {
echo "Error escribiendo archivo";
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment