/** * 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; }
<?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!';