试图用PHP获取json数据

时间:2017-10-13 22:34:52

标签: php json wordpress woocommerce feed

我正在尝试从json文件中获取数据以加载到我的wordpress网站中。我想从我抓取的网站产品的匹配名称中获取价格。我需要产品的名称以匹配我在wordpress上添加到产品页面的产品属性,然后在名称与我添加的属性匹配时获取价格。下面的代码部分工作,但由于某种原因,对属性的调用不起作用。有什么建议吗?

    $str = file_get_contents('/run_results_apmex.json');

// decode JSON
$json = json_decode($str, true);

// default value
$coinPrice = "No results found";
$product_attribute = wc_get_product_terms( $product->id , 'pa_apmex' );
// loop the json array
foreach($json['coin'] as $value){
    // check the condition
    if($value['name'] == trim($product_attribute)){ 
        $coinPrice = $value['price']; // get the price 
        break; // exit the loop
    }
}

echo $coinPrice;

1 个答案:

答案 0 :(得分:0)

我已经替换了你的函数调用

$product_attribute = wc_get_product_terms( $product->id , 'pa_apmex' );

$product_attribute = '2017 Canada 1 oz Gold Maple Leaf BU';

并运行代码

    $str = file_get_contents('run_results_apmex.json');

// decode JSON
$json = json_decode($str, true);

// default value
$coinPrice = "No results found";
$product_attribute = '2017 Canada 1 oz Gold Maple Leaf BU';
// loop the json array
foreach ($json['coin'] as $value) {
    // check the condition
    if ($value['name'] == trim($product_attribute)) {
        $coinPrice = $value['price']; // get the price
        break; // exit the loop
    }
}

echo $coinPrice;

Echo显示" $ 1,316.09"。所以,json似乎工作得很好。我的var_dump wc_get_product_terms($ product-> id,' pa_apmex'),看看它返回的内容。