Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Como faço para gerar Documento no WORD Ola Pessoal alguem tem um exemplo preciso gerar uma carta de cobrança no word....
MG
Como faço para gerar Documento no WORD  
Fechado
Ola Pessoal alguem tem um exemplo preciso gerar uma carta de cobrança no word.

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (13)


FC

nunca usei mas phpword.codeplex.com/
MG

Ola Felipe, muito obrigado eu consegui
GE

Vou tentar implementar a biblioteca.

Um arquivo .docx é bem menor que .rtf

vlw felipe
LJ

Maria regina, poderia me ajudar,
coloquei a a pasta PHPWord dentro de /app/lib/

Voce teve que modificar algum arquivo ?
pode me mandar um exemplo simples ?

Obrigado,

Luiz J
MG

Ola luiz,

Utilei uma templatei do WORD e dentro desta template faco a substituicao das tags.

Exemplo:

require_once('app/lib/PHPWord/PHPWord.php');
$PHPWord = new PHPWord();
$document = $PHPWord->loadTemplate('app/output/TemplateCarta1.docx');

$nomeloteario = strtr($cliente->NMCLIENTE, $map);
$document->setValue('nomeLoteario',$nomeloteario); // nome loteario tag que esta dentro da template .DOCX

$nome = 'Carta1'.date('dmY').'.docx';
$document->save("app/output/{$nome}");
// open the report file
parent::openFile("app/output/{$nome}");

caso queira mais informações deixe seu email que envio a template a classe certinho

grata,

Regina Guerreiro
JA

Regina, você pode disponibilizar esse modelo e a classe que faz a substituição? meu email jrmaceio09@gmail.com
SD

Maria Regina caso tenha o template e a classe para trabalhar com phpword se puder me passar sense.contato@gmail.com

Agradeço desde já.
LL

Olá Regina, se puder me enviar também eu agradeço. leandroferreiraluz@gmail.com
DI

Olá Regina, se puder me enviar também eu agradeço. gyndaniel@gmail.com.
LC

Estou usando a versão mais recente disponível em: https://github.com/PHPOffice/PHPWord
Fiz a instalação usando o comando: composer require phpoffice/phpword
Documentação: https://phpword.readthedocs.io/en/latest/templates-processing.html

  1. <?php
  2.             //carrega o modelo já com as variaveis configuradas 
  3.             // na documentação pede para usar sifrão e abre e fecha chaves, exemplo: ${nome-variavel}
  4.             $templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor"nome-do-modelo.docx" );
  5.             
  6.             // faz as substituições usando array 
  7.             $templateProcessor->setValue( array('variavel1, 'variavel2'), array('conteudo-substituir1','conteudo-substituir2') );
  8.             // faz as substituições direto 
  9.             $templateProcessor->setValue('nome-variavel', 'conteudo-q-vai-substituir');
  10.             // local e nome de destino do arquivo
  11.             $file = "app/output/". "nome-do-arquivo" . "-" . date('Hms') . ".docx";
  12.             //var_dump($file );
  13.             $templateProcessor->saveAs("{$file}"); 
  14.             // para fazer o download            
  15.             parent::openFile("{$file}");
  16. ?>


LC

Estou usando a versão mais recente disponível em: https://github.com/PHPOffice/PHPWord
Fiz a instalação usando o comando: composer require phpoffice/phpword
Documentação: https://phpword.readthedocs.io/en/latest/templates-processing.html

  1. <?php
  2.     //carrega o modelo já com as variaveis configuradas 
  3.     // na documentação pede para usar sifrão e abre e fecha chaves, exemplo: ${nome-variavel}
  4.     $templateProcessor = new \PhpOffice\PhpWord\TemplateProcessor"nome-do-modelo.docx" );
  5.             
  6.     // faz as substituições usando array 
  7.     $templateProcessor->setValue( array('variavel1''variavel2'), array('conteudo-substituir1','conteudo-substituir2') );
  8.     // faz as substituições direto 
  9.     $templateProcessor->setValue('nome-variavel''conteudo-q-vai-substituir');
  10.     // local e nome de destino do arquivo
  11.     $file "app/output/""nome-do-arquivo" "-" date('Hms') . ".docx";
  12.     //var_dump($file );
  13.     // salva o arquivo
  14.     $templateProcessor->saveAs("{$file}"); 
  15.     // para fazer o download            
  16.     parent::openFile("{$file}");
  17. ?>


WR

Olá Leandro Coelho, o arquivo modelo precisa estar em qual diretório??

Obrigado!!
LC

Wilson,
Aqui no sistema eu tenho um cadastro de documento, onde neste cadastro já anexo o modelo configurado conforme a necessidade com as variáveis, nesse caso faz o upload do documento para a pasta: files/documents/aqui_vai_o_id_do_cadastro/contrato-xxxxxx-modelo.docx , esse nome fica gravado dentro deste cadastro.
Depois quando vai usar é só escolher o documento já cadastrado, pegar esse caminho:

  1. <?php
  2. $templateProcessor = new \PhpOffice\PhpWord\TemplateProcessorfiles/documents/aqui_vai_o_id_do_cadastro/contrato-xxxxxx-modelo.docx );
  3. ?>