2 回答

TA貢獻(xiàn)1820條經(jīng)驗(yàn) 獲得超9個(gè)贊
# Original Data Structure
$arr =
[
[
'date' => '2019-09-16 15:16:03',
'stid' => 64,
'beam' => 1,
'power' => '{1,3,7,8,9}',
'gates' => 5
],
[
'date' => '2019-09-16 15:17:03',
'stid' => 64,
'beam' => 1,
'power' => '{14,15,16}',
'gates' => 3
]
];
$output = [];
foreach ($arr as $a)
{
$gateCount = 0;
foreach (explode(',', trim($a['power'], '{}')) as $p)
{
$output[] = [
'date' => $a['date'],
'gate' => $gateCount++ % $a['gates'] + 1,
'power' => $p
];
}
}
print_r($output);
輸出:
Array
(
[0] => Array
(
[date] => 2019-09-16 15:16:03
[gate] => 1
[power] => 1
)
[1] => Array
(
[date] => 2019-09-16 15:16:03
[gate] => 2
[power] => 3
)
[2] => Array
(
[date] => 2019-09-16 15:16:03
[gate] => 3
[power] => 7
)
[3] => Array
(
[date] => 2019-09-16 15:16:03
[gate] => 4
[power] => 8
)
[4] => Array
(
[date] => 2019-09-16 15:16:03
[gate] => 5
[power] => 9
)
[5] => Array
(
[date] => 2019-09-16 15:17:03
[gate] => 1
[power] => 14
)
[6] => Array
(
[date] => 2019-09-16 15:17:03
[gate] => 2
[power] => 15
)
[7] => Array
(
[date] => 2019-09-16 15:17:03
[gate] => 3
[power] => 16
)
)
筆記:
['beam']并且['stid']根據(jù)您的樣本被遺漏了。如果需要,可以輕松添加。

TA貢獻(xiàn)2036條經(jīng)驗(yàn) 獲得超8個(gè)贊
你可以這樣做:
$newArray = [];
foreach ($oldArray as $element) {
foreach ($element['power'] as $power) {
$element['power'] = $power;
$newArray[] = $element;
}
}
- 2 回答
- 0 關(guān)注
- 207 瀏覽
添加回答
舉報(bào)