dioni Posted April 2, 2012 Report Share Posted April 2, 2012 Olá pessoal!!Tenho um arquivo csv (historico.csv) como irei mostrar no exemplo:exemplo:codigo;descricao;valor;data1;cadeira;15.00;01-04-20122;armario;100.00;31-03-20123;mesa;95.00;03-04-2012Preciso ordenar o conteúdo do arquivo em ordem decrescente com referencia aos valores da coluna valor.Abaixo um demonstração de como quero visualizar as informações do arquivo na página. Código Descrição Valor Data2 armario 100.00 31-03-20123 mesa 95.00 03-04-20121 cadeira 15.00 01-04-2012Como posso fazer isso? Já tentei utilizar a função rsort mas o conteúdo do arquivo é ordenado pela coluna código. Quote Link to comment Share on other sites More sharing options...
0 Massaki Posted April 2, 2012 Report Share Posted April 2, 2012 Abra o arquivo, coloque cada uma das colunas em um array diferente e utilize o array_multisort. Depois exporte novamente para o arquivo.// Abre arquivo e separa conteúdo em 4 arrays $ponteiro = fopen('arquivo.csv', 'r'); while (!feof($ponteiro)) { $linha .= fread($ponteiro); list($numero[], $movel[], $valor[], $data[]) = explode(";", $linha); } fclose($ponteiro); // Ordena as arrays a partir do valor de forma decrescente array_multisort($valor, SORT_DESC, $numero, $movel, $data); // Abre segundo arquivo e grava conteúdo formatado e ordenado $ponteiro2 = fopen('arquivo2.csv', 'w'); foreach ($valor as $i=>$preço) { $conteudo = "$numero[$i]; $movel[$i]; $preço; $data[$i]\n"; fwrite ($ponteiro2, $conteudo); } fclose($ponteiro2); Quote Link to comment Share on other sites More sharing options...
0 dioni Posted April 2, 2012 Author Report Share Posted April 2, 2012 Está aparecendo os seguintes erros na linha do listNotice: Undefined offset: 3Notice: Undefined offset: 2 Notice: Undefined offset: 1 Quote Link to comment Share on other sites More sharing options...
0 Massaki Posted April 3, 2012 Report Share Posted April 3, 2012 Erro meu. Retire o ponto antes do igual da linha anterior, ou ele vai concatenar as strings a cada linha lida Quote Link to comment Share on other sites More sharing options...
Question
dioni
Olá pessoal!!
Tenho um arquivo csv (historico.csv) como irei mostrar no exemplo:
exemplo:
codigo;descricao;valor;data
1;cadeira;15.00;01-04-2012
2;armario;100.00;31-03-2012
3;mesa;95.00;03-04-2012
Preciso ordenar o conteúdo do arquivo em ordem decrescente com referencia aos valores da coluna valor.
Abaixo um demonstração de como quero visualizar as informações do arquivo na página.
Código Descrição Valor Data
2 armario 100.00 31-03-2012
3 mesa 95.00 03-04-2012
1 cadeira 15.00 01-04-2012
Como posso fazer isso?
Já tentei utilizar a função rsort mas o conteúdo do arquivo é ordenado pela coluna código.
Link to comment
Share on other sites
3 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.