<?php
//Exemplo de extração de dados de um arquivo texto com colunas de largura fixa
require '../utils.php';
require '../store.php';
function formatCEP($str)//Função para formatar o CEP
{
return XtUtils::inputMask($str, '##.###-###');
}
function filtro($row)//Função de filtragem de linha
{
$doc = substr($row, 70, 14);
if($doc == '02641889000111')
{
return false;
}else{
return true;
}
}
//O layout de colunas
$cm = array(
array(
'title' => 'codigo'
,'start' =>0
,'size' =>10
)
,array(
'title' => 'nome'
,'start' =>10
,'size' =>60
,'fn' => 'strtolower'
)
,array(
'title' => 'doc'
,'start' =>70
,'size' =>14
)
,array(
'title' => 'endereco'
,'start' =>114
,'size' =>50
)
,array(
'title' => 'cidade'
,'start' =>164
,'size' =>30
)
,array(
'title' => 'uf'
,'start' =>194
,'size' =>2
)
,array(
'title' => 'cep'
,'start' =>196
,'size' =>8
,'fn' => 'formatCEP'
)
,array(
'title' => 'telef'
,'start' =>204
,'size' =>15
)
,array(
'title' => 'fax'
,'start' =>219
,'size' =>15
)
);
$store = XtStore::fromFixed('CREDOR.TXT', $cm, 0, 1);//Extrai dados sem filtrar linhas
$store = XtStore::fromFixed('CREDOR.TXT', $cm, 236, 1);//Extrai dados filtrando as linhas pelo tamanho
$store = XtStore::fromFixed('CREDOR.TXT', $cm, 'filtro', 1);//Extrai dados filtrando as linhas pela função personalizada
XtUtils::printr($store);
?>
|