Php 在Woocomece Rest Api中打印元数据
我是Woocomece Rest API的新手。我正在访问wordpress的所有数据。现在我想打印元数据。Api将此json中的数据返回给我:-Php 在Woocomece Rest Api中打印元数据,php,wordpress,Php,Wordpress,我是Woocomece Rest API的新手。我正在访问wordpress的所有数据。现在我想打印元数据。Api将此json中的数据返回给我:- [meta_data] => Array ( [0] => Array ( [id] => 53380
[meta_data] => Array
(
[0] => Array
(
[id] => 53380
[key] => slide_template
[value] => default
)
[1] => Array
(
[id] => 53381
[key] => payment_details
[value] => no data found
)
[2] => Array
(
[id] => 53382
[key] => wf_invoice_number
[value] => CNC04216
)
)
#specific row
echo $data['meta_data'][2]['key']; // outputs: wf_invoice_number
在解码json之后,我想打印这个元数据。
我正试着这样印刷
<?php echo $std[$k]['meta_data'][2]->wf_invoice_number; ?>
但它可能不是std类对象。。。
我如何回显元数据值。我有点不清楚您的问题到底是什么-似乎您的值和键混淆了 问题中的数据可以用这个PHP代码段表示
$data=array(
'meta_data'=>array(
array('id'=>53380,'key'=>'slide_template','value'=>'default'),
array('id'=>53381,'key'=>'payment_details','value'=>'no data found'),
array('id'=>53382,'key'=>'wf_invoice_number','value'=>'CNC04216'),
)
);
要显示所有部分的详细信息,您可以像这样遍历顶级数组,并使用标准数组表示法访问其中的项
foreach( $data['meta_data'] as $arr ){
printf(
'<pre>
id: %s
key: %s
value: %s
</pre>',
$arr['id'],
$arr['key'],
$arr['value']
);
}
要显示特定记录中的键,请再次在索引2中显示:
#键
printf(“%s”,print_r(数组键($data['meta_data'][2]),true));
要在同一索引中显示相应的值,请执行以下操作:
#值
printf(“%s”,print_r(数组值($data['meta_data'][2]),true));
也许echo$std[$k]['meta_data'][2]['key']代码>通知:未定义索引:wf\U发票\U编号。。。。但是它在这个键中有一个数据…wf\u invoice\u number
是存储在该实体中的数据,而不是在打印后用来访问的键($std[$k][“meta\u data”]),它向我显示这样的数据[7]=>Array([id]=>50048[key]=>payment\u details[value]=>payment))……这个数组中的问题是它是四次嵌套的。。。Woocomerce用json响应,在php中解码时,我们将发现一个四次嵌套数组。因此,我使用array_push创建一个新数组,并使用如下键推送一个值:-$meta=array();foreach($stdf as$key=>$value){array_push($meta,$stdf[$key]['key']);$meta[$stdf[$key]['key']]=$stdf[$key]['value'];}$payment_details=$meta['payment_details'];。。。。谢谢你的帮助。。
#specific row
echo $data['meta_data'][2]['key']; // outputs: wf_invoice_number
#keys
printf('<pre>%s</pre>',print_r( array_keys( $data['meta_data'][2] ), true ) );
#values
printf('<pre>%s</pre>',print_r( array_values( $data['meta_data'][2] ), true ) );