dpd20130 2017-09-18 18:36
浏览 48
已采纳

将文本解析为json

I have a txt file that looks like that:

1 - 10
2 - 20
3 - 30

How can I make a json array that looks like that:

{
  "item": "1",
  "value": "10"
},

{
  "item": "2",
  "value": "20"
},

{
  "item": "3",
  "value": "30"
},

Thanks!

  • 写回答

3条回答 默认 最新

  • duanben1909 2017-09-18 19:13
    关注

    You need to read line by line from the text file and explode the line with delimiter '-'. Then create an array which can be converted to json.

    // Open the file to read data.
    $fh = fopen('student.txt','r');
    // define an eampty array
    $data = array();
    // read data
    while ($line = fgets($fh)) {
        // if the line has some data
       if(trim($line)!=''){
           // explode each line data 
           $line_data = explode('-',$line);
           // push data to array
           //array_push($data,array('item'=>trim($line_data[0]),'value'=>trim($line_data[1])));
           $data[]=array('item'=>trim($line_data[0]),'value'=>trim($line_data[1]));
       }
    }
    fclose($fh);
    // json encode the array
    echo $json_data = json_encode($data);
    

    Output:

    [{"item":"1","value":"10"},
    {"item":"2","value":"20"},
    {"item":"3","value":"30"}]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题