Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Convert CSV to JSON using PHP

Tags:

json

php

csv

I am trying to convert CSV file to JSON using PHP.

Here is my code

<?php   date_default_timezone_set('UTC'); $today = date("n_j"); // Today is 1/23/2015 -> $today = 1_23  $file_name = $today.'.CSV'; // My file name is 1_23.csv $file_path = 'C:\\Users\\bheng\\Desktop\\qb\\'.$file_name; $file_handle = fopen($file_path, "r");  $result = array();  if ($file_handle !== FALSE) {      $column_headers = fgetcsv($file_handle);      foreach($column_headers as $header) {             $result[$header] = array();      }     while (($data = fgetcsv($file_handle)) !== FALSE) {         $i = 0;         foreach($result as &$column) {                 $column[] = $data[$i++];         }     }     fclose($file_handle); }  // print_r($result); // I see all data(s) except the header  $json = json_encode($result); echo $json;  ?> 

print_r($result); // I see all data(s)

Then I json_encode($result); and tried to display it, but nothing is displaying on the screen at all. All I see is the blank screen, and 0 error message.

Am I doing anything wrong ? Can someone help me ?

Added Result of print_r($result);

Array (     [Inventory] => Array (         [0] => bs-0468R(20ug)         [1] => bs-1338R(1ml)         [2] => bs-1557G(no bsa)         [3] => bs-3295R(no BSA)         [4] => bs-0730R-Cy5"         [5] => bs-3889R-PE-Cy7"         [6] => 11033R         [7] => 1554R-A647         [8] => 4667         [9] => ABIN731018         [10] => Anti-DBNL protein           .... more ....  
like image 210
iori Avatar asked Jan 23 '15 20:01

iori


People also ask

What does JSON_ encode do?

The json_encode() function is used to encode a value to JSON format.


1 Answers

Try like this:

$file="1_23.csv"; $csv= file_get_contents($file); $array = array_map("str_getcsv", explode("\n", $csv)); $json = json_encode($array); print_r($json); 
like image 143
Whirlwind Avatar answered Oct 12 '22 22:10

Whirlwind