Primero descargar esta libreria gratuita: http://phpword.codeplex.com/
Mi ejemplo al final de la página ya la contiene.
Descomprimirla donde quieran, lo importante es saber donde quedó el archivo PHPWord.php para después incluirlo en nuestro código con: require_once 'PHPWord.php';
Iniciando el código es:
// Para declarar un nuevo documento
$PHPWord = new PHPWord();
// Para crear seccion para escribir en ella
$section = $PHPWord->createSection();
Luego podemos crear formatos para los textos que introduciremos:
// Formatos para los textos
$PHPWord->addFontStyle('rStyle', array('bold'=>true, 'italic'=>false, 'size'=>16));
$PHPWord->addParagraphStyle('pStyle', array('align'=>'both', 'spaceAfter'=>100));
$PHPWord->addFontStyle('estiloTexto', array('bold'=>false, 'italic'=>false, 'size'=>12));
$PHPWord->addParagraphStyle('pJustify', array('align' => 'both', 'spaceBefore' => 0, 'spaceAfter' => 0, 'spacing' => 0));
Ahora podemos añadir el texto, que utiliza los formatos que creamos arriba:
$section->addText('REGISTRO DE CABALLERO', 'rStyle', 'pStyle');
$section->addTextBreak(2); //Con esto se dejan líneas en blanco
$section->addText(' El caballero '.$nombres.' '.$apellidos.' se ha registrado en el torneo.','estiloTexto', 'pJustify');
$section->addTextBreak(2);
Nuestro formulario:
<!DOCTYPE HTML>
<html><head></head>
<body>
<form name="formulario" action="./caballero/registro/index.php" method="post">
<p><label>Nombre(s): </label><input type="text" name="fnombres"> </p>
<p><label>Apellidos: </label><input type="text" name="fapellidos"></p>
<input value="Enviar" type="submit">
</form>
</body>
</html>
Finalmente para guardar el documento:
// Save File
$objWriter = PHPWord_IOFactory::createWriter($PHPWord, 'Word2007');
$objWriter->save('Caballeros/Ser '.$nombres.' '.$apellidos.'.docx');
En lo que pueda hare un upload del ejemplo, zippy ha removido mis archivos. Disculpen.
Muchas gracias, este tema fue de gran ayuda :) Feliz día
ReplyDelete