Postagens

Mostrando postagens de dezembro, 2012

MYSQL - Utilizando UNION e multiplas queries para agrupar resultados

Um comando muito pouco utilizado é o UNION mas ele é extremamente útil quando queremos efetuar selects de uma tabela ou várias e uni-las em um único resultado. Isto permite ao programa que receber os dados poder trata-los de uma unica vez ao invés de ter de efetuar vários selects separadamente e junta-los. Neste post vamos trabalhar com duas coisas interessantes que são o comando UNION e SELECTS de uma mesma tabela mas com diferentes critérios. Vamos utilizar como base a tabela 'teste' abaixo id nome idade estado 1 Pedro 50 SP 2 Antonio 30 RJ 3 Amélia 20 SP 4 Marta 15 RJ 5 Maria 80 SP O objetivo é selecionar a maior idade da tabela. Podemos fazer isto de maneira muito fácil pelo comando abaixo: SELECT MAX(idade) FROM teste idade 80 Ótimo, porém o problema é que apenas recuperamos o valor da idade máxima, sem as informações sobre quem possui esta idade, ou seja, não trouxemos a linha inteira. Para que possamos fa

PHP - LENDO ARQUIVOS CSV COM A FUNÇÃO fgetcsv

O PHP possui muitas funções pouco conhecidas mas que quebram um galhão na hora de fazer algo rapidamente e com poucas linhas. Ler e parsear um arquivo no formato CSV pode ser bem chato mas com a função fgetcsv se torna bem tranquilo. Podemos dizer que utilizar funções nativas ao invés de cria-la no próprio script é muito mais eficiente e rápido, tanto na questão da velocidade de se programar quanto na execução. Procure sempre utilizar as funções nativas. Vamos começar criando um script muito simples apenas para ilustrar como a função fgetcsv funciona e depois daremos uma solução completa para ler um arquivo e convertê-lo em array. Vamos trabalhar com um arquivo chamado "test.csv" com a seguinte estrutura: nome;idade Joao;25 carlos;50 O script básico é o que segue abaixo: <?php $handle = fopen("test.csv", "r"); $linha = fgetcsv($handle, 1000, ";"); var_dump($linha); O resultado será: array(2) { [0]=> string