/**
  * autoTXTtoXML
  * Método para converter todas as nf em formato txt para o formato xml
  * localizadas na pasta "entradas". Os arquivos txt apoś terem sido
  * convertidos com sucesso são removidos da pasta.
  * Os arquivos txt devem ser nomeados como "<qualquer coisa>-nfe.txt"
  * @version 2.02
  * @package NFePHP
  * @author Roberto L. Machado <linux.rlm at gmail dot com>
  * @param none
  * @return boolean true sucesso false Erro
  */
 public function autoTXTtoXML()
 {
     //varre pasta "entradas" a procura de NFes em txt
     $aName = $this->listDir($this->entDir, '*-nfe.txt', false);
     // se foi retornado algum arquivo
     $totTXT = count($aName);
     if ($totTXT > 0) {
         for ($x = 0; $x < $totTXT; $x++) {
             //carrega nfe em txt para converter em xml
             $filename = $this->entDir . $aName[$x];
             $newname = $this->temDir . $aName[$x];
             //instancia a classe de conversão
             $oXML = new ConvertNFePHP();
             //convere o arquivo
             $xml = $oXML->nfetxt2xml($filename);
             //salvar o xml
             $xmlname = $this->entDir . $oXML->chave . '-nfe.xml';
             if (!file_put_contents($xmlname, $xml)) {
                 $this->errStatus = true;
                 $this->errMsg .= "FALHA na gravação da NFe em xml.\n";
                 return false;
             } else {
                 //mover o txt para pasta temp
                 rename($filename, $newname);
             }
             //fim do teste de gravação
         }
         // fim do for
     }
     //fim do teste de contagem
     return true;
 }
Пример #2
0
<?php

require_once dirname(__FILE__) . '/../../libs/NFe/ConvertNFePHP.class.php';
$dir = dirname(__FILE__) . '/../xml/';
$arq = '0008.txt';
//instancia a classe
$nfe = new ConvertNFePHP();
if (is_file($arq)) {
    $xml = $nfe->nfetxt2xml($arq);
    $xml = $xml[0];
    if ($xml != '') {
        echo '<pre>';
        echo htmlspecialchars($xml);
        echo '</pre><br>';
        if (!file_put_contents($dir . '0008-nfe.xml', $xml)) {
            echo "ERRO na gravação";
        }
    }
}
<?php

header('Content-Type: text/html; charset=utf-8');
if (isset($_POST['conteudoArquivo']) || strlen(trim($_POST['conteudoArquivo'])) > 0) {
    $fileName = './xml/' . date('YmdHisu') . '-nfe';
    if (!file_put_contents($fileName . '.txt', $_POST['conteudoArquivo'])) {
        echo "ERRO: Gravação";
        die;
    }
    require_once '../../libs/NFe/ConvertNFePHP.class.php';
    $nfe = new ConvertNFePHP();
    $xml = $nfe->nfetxt2xml($fileName . '.txt');
    $xml = $xml[0];
    if ($xml != '') {
        echo trim($xml);
    }
    unlink($fileName . '.txt');
    die;
}
echo 'ERRO: O conteúdo está vazio!';