dimanche 12 juin 2016

paring json array in php from api

I am getting an array of specs from flipkart's API.

I am able to get this response from that API:

{
    "nextUrl": "https://affiliate-api.flipkart.net/1.0/affiliate/feeds/fnkygygma/category/reh/55ab6c2673a4773ffb8e4019.json?expiresAt=1452881213871&sig=1c4c5111b6b014a71a17b229e6df6afc",
    "validTill": 1452881213871,
    "productInfoList": [
    {
        "productBaseInfoV1": {
        "productId": "TDHDMH5GRSPZ3DNM",
        "title": "Newhide Designer",
        "productDescription": "",
        "imageUrls": {
            "400x400": "http://img.fkcdn.com/image/travel-document-holder/d/n/m/cdbp040739-newhide-passport-holder-designer-400x400-imadmh8zgxbrsgq6.jpeg",
            "200x200": "http://img.fkcdn.com/image/travel-document-holder/d/n/m/cdbp040739-newhide-passport-holder-designer-200x200-imadmh8zgxbrsgq6.jpeg",
            "unknown": "http://img.fkcdn.com/image/travel-document-holder/d/n/m/cdbp040739-newhide-passport-holder-designer-original-imadmh8zgxbrsgq6.jpeg",
            "800x800": "http://img.fkcdn.com/image/travel-document-holder/d/n/m/cdbp040739-newhide-passport-holder-designer-800x800-imadmh8zgxbrsgq6.jpeg"
        },
        "productFamily": null,
        "maximumRetailPrice": {
            "amount": 1145,
            "currency": "INR"
        },
        "flipkartSellingPrice": {
            "amount": 1145,
            "currency": "INR"
        },
        "flipkartSpecialPrice": {
            "amount": 1145,
            "currency": "INR"
        },
        "productUrl": "http://dl.flipkart.com/dl/newhide-designer/p/itmdp2nunbzffwzr?pid=TDHDMH5GRSPZ3DNM&affid=keshav",
        "productBrand": "Newhide",
        "inStock": true,
        "codAvailable": true,
        "discountPercentage": 0,
        "offers": [],
        "categoryPath": "[[{"node_id":20001,"node_name":"FLIPKART_TREE"},{"node_id":21183,"node_name":"Lifestyle"},{"node_id":21499,"node_name":"Leather \u0026 Travel Accessories"},{"node_id":21960,"node_name":"Wallets \u0026 Clutches"},{"node_id":21274,"node_name":"Wallets \u0026 Card Wallets"}]]",
        "styleCode": null,
        "attributes": {
            "size": "",
            "color": "Black",
            "storage": "",
            "sizeUnit": "",
            "displaySize": ""
        }
      },
      "productShippingInfoV1": {
          "shippingCharges": {
              "amount": 0,
              "currency": "INR"
          },
          "sellerName": null,
          "sellerAverageRating": null,
          "sellerNoOfRatings": 0,
          "sellerNoOfReviews": 0
      },
      "categorySpecificInfoV1": {
          "keySpecs": [
              "Passport Holder",
              "Passport Wallet"
           ],
           "detailedSpecs": [],
           "specificationList": [
           {
            "key": "General",
            "values": [
              {
                "key": "Type",
                "value": [
                  "Passport Organizer"
                ]
              },
              {
                "key": "Ideal For",
                "value": [
                  "Men's, Women's"
                ]
              },
              {
                "key": "Material",
                "value": [
                  "Leather, Cloth"
                ]
              },
              {
                "key": "Slot for Cards",
                "value": [
                  "Yes"
                ]
              },
              {
                "key": "Slot for Passport",
                "value": [
                  "Yes"
                ]
              },
              {
                "key": "Slot for Cheque Book",
                "value": [
                  "Yes"
                ]
              },
              {
                "key": "Style Code",
                "value": [
                  "CDBP040739"
                ]
              },
              {
                "key": "Color Code",
                "value": [
                  "Black"
                ]
              }
            ]
          },
          {
            "key": "Warranty",
            "values": [
              {
                "key": "  ",
                "value": [
                  "1 Year Newhide warranty"
                ]
              }
            ]
          }
        ],
        "booksInfo": {
          "language": null,
          "binding": null,
          "pages": null,
          "publisher": null,
          "year": 0,
          "authors": []
        },
        "lifeStyleInfo": {
          "sleeve": null,
          "neck": null,
          "idealFor": [
            "Men's",
            "Women's"
          ]
        }
      }
    }
}

I and not able decode

"categorySpecificInfoV1": {
  "keySpecs": [
    "Passport Holder",
    "Passport Wallet"
  ],

I have tried json_decode. This gives error

Warning: json_decode() expects parameter 1 to be string, array given.

 $keySpecs=$product['categorySpecificInfoV1']['keySpecs'];
 $ar = json_decode($keySpecs,true); 

I am new to PHP, how can I print the keyspecs from keyspecs array?

Aucun commentaire:

Enregistrer un commentaire