2016-12-17 23 views
5
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET"); 
curl_setopt($ch,CURLOPT_RETURNTRANSFER,TRUE); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/json", "X-Shopify-Access-Token: $token")); 
$translation_json = curl_exec($ch); 
$translation_decoded= json_decode($translation_json, true); 

sonuç: bir json karşılık gelen bu dizi kodu çözülmüş, ancak bu döngü bir sorunla karşı karşıyaphp json_decode dizisinden değerler nasıl kullanılır?

Array 
(
    [asset] => Array 
     (
      [key] => locales/en.default.json 
      [public_url] => 
      [value] => { 
    "general": { 
    "accessibility": { 
     "skip_to_content": "Skip to content", 
     "close_modal": "Close (esc)" 
    }, 
    "meta": { 
     "tags": "Tagged \"{{ tags }}\"", 
     "page": "Page {{ page }}" 
    }, 
    "404": { 
     "title": "404 Page Not Found", 
     "subtext": "The page you requested does not exist.", 
     "link": "Continue shopping" 
    }, 
    "pagination": { 
     "previous": "Previous", 
     "next": "Next", 
     "current_page": "Page {{ current }} of {{ total }}" 
    }, 
    "password_page": { 
     "opening_soon": "Opening Soon", 
     "login_form_heading": "Enter store using password", 
     "login_form_password_label": "Password", 
     "login_form_password_placeholder": "Your password", 
     "login_form_submit": "Enter", 
     "signup_form_email_label": "Email", 
     "signup_form_success": "We will send you an email right before we open!", 
     "admin_link_html": "Are you the store owner? Log in here<\/a>", 
     "password_link": "Enter using password", 
     "powered_by_shopify_html": "This shop will be powered by {{ shopify }}" 
    }, 
    "social": { 
     "share_on_facebook": "Share", 
     "share_on_twitter": "Tweet", 
     "share_on_pinterest": "Pin it", 
     "alt_text": { 
     "share_on_facebook": "Share on Facebook", 
     "share_on_twitter": "Tweet on Twitter", 
     "share_on_pinterest": "Pin on Pinterest" 
     } 
    }, 
    "search": { 
     "no_results_html": "Your search for \"{{ terms }}\" did not yield any results.", 
     "results_with_count": { 
     "one": "{{ count }} result for \"{{ terms }}\"", 
     "other": "{{ count }} results for \"{{ terms }}\"" 
     }, 
     "title": "Search our site", 
     "placeholder": "Search", 
     "submit": "Submit", 
     "close": "Close search" 
    }, 
    "newsletter_form": { 
     "newsletter_email": "Join our mailing list", 
     "email_placeholder": "Email address", 
     "confirmation": "Thanks for subscribing", 
     "submit": "Subscribe" 
    }, 
    "filters": { 
     "show_more": "Show More", 
     "show_less": "Show Less" 
    } 
    }, 

? accessibility, 404, password_page, social ve daha fazlası değerlerini kullanmak istiyorum. Bundan nasıl değer alabilirim? Tekrar değerlerin kodunu gerek json formatında hala diziye

$decode = json_decode($translation_decoded['asset']['value']); 
+1

Muhtemelen sadece üzerinde bir kez daha deşifre etmek zorunda '$ translation_decoded [ 'varlık'] [' Bu değeri başka bir diziye dönüştürmek için ']. – Rasclatt

+0

Tamam, Ancak daha fazla iç içe değer var. Yani bunu her yuvalanmış değer için yapmalı mıyım? –

+0

Bu değer json olarak kodlanmış, bu yüzden sürekli olarak json olarak kodlanmış başka değerler varsa, evet – Rasclatt

cevap

2

Bu şekilde kullanabilir. Lütfen bunu dene.

1
$accessibility=$translation_decoded['asset']['value']['general']['accessibility'] ; 
$social=$translation_decoded['asset']['value']['social'] ; 
$password_page=$translation_decoded['asset']['value']['password_page'] ; 
$Page404=$translation_decoded['asset']['value']['404'] ; 

yapmak Çünkü

0

sizin json_decode funciton üçüncü $depth seçeneği eklemek, nasıl manual başvurmak kullanmak ve bu post

$translation_decoded= json_decode($translation_json, true, $depth); 
İlgili konular