Open gwmoura opened 8 years ago
Vi esse package. Parece ser muito simples de trabalhar. https://github.com/asimlqt/php-google-spreadsheet-client
@edyonil dei uma olhada, ela bem interessante, podemos até manipular a planilha no google, mas acho q ler apenas um csv fica mais simples... Vou ver se consigo fazer uns testes com esse pacote.
@gwmoura, entendi sua explicação. De fato ler o CSV vai ser a melhor implementação. Só temos que pedir a @vinaocruz para liberar o form público, somente leitura.
Vou dar um Fork e vou fazer aquela ideia que te falei no evento. Vou criar um issue para isso
;)
A ideia é rodar esse script antes dos testes
Fiz um teste com as duas opções publicados no stack @gwmoura. Ambas não conseguir ler o arquivo limpo. Usando tanto file_get_contents, como fopen e tb curl, o retorno é um monte de códigos htmls, css e javascript. Olhando um pouco mais em baixo nos comentários o cara mostrou a solução:
http://stackoverflow.com/a/23702001
Esse consigo abrir o arquivo com o fopen ou file_get_contents limpo em csv. Segue um código que estou utilizando para testar com uma planilha minha no google docs:
$spreadsheet_url="https://docs.google.com/spreadsheets/d/1xJMTHaZZJrl1Vpt75Xx3zxz7HSoiUIqvzvDj3HX-4UE/export?gid=0&format=csv&id=1xJMTHaZZJrl1Vpt75Xx3zxz7HSoiUIqvzvDj3HX-4UE";
ini_set('default_socket_timeout', 15)
$spreadsheet_data = [];
if (($handle = fopen($spreadsheet_url, "r")) !== FALSE) {
while (($data = fgetcsv($handle, null, ",")) !== FALSE) {
$spreadsheet_data[]=$data;
}
}
fclose($handle);
var_dump($spreadsheet_data);
É um código apenas de teste, mas que irei usar para ler o CSV. Sendo que é necessário o arquivo está publico!
Galera, só vamos se ligar que hoje o cadastro está rolando pelo google form que vini criou. Quando colocar novos campos no Json temos que colocar lá tb, porque se não vai quebrar o código que ler o csv de lá, se ligou!
Agora vou começar a trabalhar na classe cliente, que vai ler os dados do repositório e vai criar o arquivo json. @vinaocruz disse que eu não posso somente sobrescrever o arquivo json, terei que ler e comparar as empresas e apenas adicionar as novas cadastradas. Isso porque permitiremos cadastrar as empresas diretamente no json.
Removi a ideia de criar uma abstração para ler o arquivo. Não faz sentido ter essa classe. Será apenas um arquivo mesmo.
Pensei em criar um script para ler a planilha de resultados do google form ou o mais fácil um csv público e gerar o json apropriado.
Achei essa resposta no stackoverflow: http://stackoverflow.com/a/23394860/2891567
Podemos ser o csv público assim: