我有一个类似于以下的数组输出:
Array
(
[DPPSI_1_50_min] => 11
)
1
Array
(
[DPPSI_2_40_min] => 10
)
1
Array
(
[DPPSI_3_30_min] => 9
)
1
Array
(
[DPPSI_4_20_min] => 8
)
1
Array
(
[DPPSI_5_10_min] => 6.1
)
1
Array
(
[DPPSI_6_0_min] => 3.77
)
1
Array
(
[DPPSI_1_50_min] => 14
)
1
Array
(
[DPPSI_2_40_min] => 15
)
1
Array
(
[DPPSI_3_30_min] => 16
)
1
Array
(
[DPPSI_4_20_min] => 17
)
1
Array
(
[DPPSI_5_10_min] => 18
)
1
Array
(
[DPPSI_6_0_min] => 19
)
1
我需要做的是将这些附加到html data- *属性。像这样:
<select data-DDPSI_6_0_min="19">
执行此操作的最佳方法是什么?我已经看到了爆破功能以及http_build_query方法。 http_build_query让我超级接近,但是我剩下了一堆看起来像这样的编码字符:
0%5BDPPSI_1_50_min%5D=11 1%5BDPPSI_2_40_min%5D=10 2%5BDPPSI_3_30_min%5D=9
3%5BDPPSI_4_20_min%5D=8 4%5BDPPSI_5_10_min%5D=6.1
5%5BDPPSI_6_0_min%5D=3.770%5BDPPSI_1_50_min%5D=14 1%5BDPPSI_2_40_min%5D=15
2%5BDPPSI_3_30_min%5D=16 3%5BDPPSI_4_20_min%5D=17 4%5BDPPSI_5_10_min%5D=18
5%5BDPPSI_6_0_min%5D=19
有什么想法吗?
答案 0 :(得分:1)
假设您的数据数组如下:
$array = array(
array(
'DPPSI_1_50_min' => 11,
'DPPSI_2_40_min' => 10,
...
)
);
您可以为每个数组值创建一个html标签:
foreach ($array as $eachArray) {
foreach ($eachArray as $key => $value) { ?>
<div data-<?= $key ?>=<?= $value ?> ></div>
<?php }
}
根据您的评论进行了编辑:
您无法实现foreach缺点。您必须将标记的第一部分保存在var中,然后像这样连接每个数组值:
$tag ='<option value="'.$product['term_id'].'" data-details="'.$product['description'].'" data-name="' .$product['model']. '" data-serial="'.$product['serial'].'"';
foreach ( $tolerances_arr[0] as $key => $value ) {
$tag .= " data-{$key}=\"{$value}\" ";
}
$tag .='"> '. $product['description'].' </option>';
这是为了防止您只在一个选项标签中创建所有自定义标签属性
答案 1 :(得分:0)
最好通过简单的foreach循环播放声音。
foreach ( $myArray as $key => $value ) {
echo "{$key}=\"{$value}\"";
}