dtmm0148603
dtmm0148603
2011-10-06 05:55

解析此JSON文件结构

已采纳

i have a file with inside data formatted in json format:

{
   "data": 

     {

   "users": [


    {

        "ragione_sociale": "",
        "nome": "Annamaria Zaccariello",
        "indirizzo": "",
        "cap": "",
        "citta": "",
        "provincia": "",
        "telefono1": "",
        "telefono2": "",
        "fax": "",
        "cellulare": "",
        "codice_fiscale": "",
        "newsletter": "1",
        "sesso": "",
        "username": "annamaria.zaccariello@libero.it",
        "scadenza_tessera": "09/08/2012",
        "tipo_tessera": "Red Carpet",
        "stato_tessera": "0",
        "user_id": "1",
        "punti": "0"
    },
    {

        "ragione_sociale": "",
        "nome": "Debora Chessa",
        "indirizzo": "",
        "cap": "",
        "citta": "",
        "provincia": "ge",
        "telefono1": "",
        "telefono2": "",
        "fax": "",
        "cellulare": "3494339496",
        "codice_fiscale": "",
        "newsletter": "1",
        "sesso": "F",
        "username": "debora_c85@hotmail.it",
        "scadenza_tessera": "05/10/2012",
        "tipo_tessera": "Membership",
        "stato_tessera": "0",
        "user_id": "968",
        "punti": "0"
    } 
    ]
     }

}

I need to parse all users one by one and extracting for each one some information "nome", "username", "scadenza_tessera", "tipo_tessera", "stato_tessera", "punti", "provincia", "cellulare"

Anyone can paste PHP code to do this operation ?

Thanks

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • dongshuzhuo5659 dongshuzhuo5659 10年前

    If you save your json stuff in $myjson you will be able to do something like this:

    $myjson = <<< EOT
    {
       "data": 
    
         {
    
       "users": [
    
    
        {
    
            "ragione_sociale": "",
            "nome": "Annamaria Zaccariello",
            "indirizzo": "",
            "cap": "",
            "citta": "",
            "provincia": "",
            "telefono1": "",
            "telefono2": "",
            "fax": "",
            "cellulare": "",
            "codice_fiscale": "",
            "newsletter": "1",
            "sesso": "",
            "username": "annamaria.zaccariello@libero.it",
            "scadenza_tessera": "09/08/2012",
            "tipo_tessera": "Red Carpet",
            "stato_tessera": "0",
            "user_id": "1",
            "punti": "0"
        },
        {
    
            "ragione_sociale": "",
            "nome": "Debora Chessa",
            "indirizzo": "",
            "cap": "",
            "citta": "",
            "provincia": "ge",
            "telefono1": "",
            "telefono2": "",
            "fax": "",
            "cellulare": "3494339496",
            "codice_fiscale": "",
            "newsletter": "1",
            "sesso": "F",
            "username": "debora_c85@hotmail.it",
            "scadenza_tessera": "05/10/2012",
            "tipo_tessera": "Membership",
            "stato_tessera": "0",
            "user_id": "968",
            "punti": "0"
        } 
        ]
         }
    
    }
    EOT;
    
    $obj=json_decode($myjson);
    foreach($obj->data->users as $user){
            echo $user->username;
    }
    

    However if you insert invalid JSON $obj will be null. This is not covered by the snippet.

    点赞 评论 复制链接分享