У меня есть массив …
array (size=2)
'prd' =>
array (size=8)
0 => string '1' (length=1)
1 => string '2' (length=1)
2 => string '3' (length=1)
3 => string '4' (length=1)
4 => string '5' (length=1)
5 => string '6' (length=1)
6 => string '7' (length=1)
7 => string '8' (length=1)
'price' =>
array (size=8)
0 => string 'a' (length=1)
1 => string 'b' (length=1)
2 => string 'c' (length=1)
3 => string 'd' (length=1)
4 => string 'e' (length=1)
5 => string 'f' (length=1)
6 => string 'g' (length=1)
7 => string 'h' (length=1)
Я хочу, чтобы результат выглядел следующим образом …
1 затраты a, 2 затраты b, 3 затраты c, 4 затраты d, 5 затрат e, 6 затрат f, 7 затрат g, 8 затрат h
до сих пор я попробовал следующее …
foreach ($array as $values) {
foreach ($values as $val ) {
echo $val;
}
}
это дает мне массивы в порядке …
12345678abcdefgh
Как мне получить его на выходе
1a2b3c4d5e6f7g8h
Я могу справиться с форматом, просто борясь с порядком.
Есть несколько способов, вот два.
Используйте ключ зацикленного массива для доступа к другому:
foreach($array['prd'] as $key => $val) {
echo $val . $array['price'][$key];
}
Объединить в ключи и значения:
$array = array_combine($array['prd'], $array['price']);
foreach($array as $key => $val) {
echo $key . $val;
}
Попробуй это
$data = array (
'prd' => array (
0 => '1',
1 => '2',
2 => '3',
3 => '4',
4 => '5',
5 => '6',
6 => '7',
7 => '8',
),
'price' => array (
0 => 'a',
1 => 'b',
2 => 'c',
3 => 'd',
4 => 'e',
5 => 'f',
6 => 'g',
7 => 'h',
)
);
for ($x = 0; $x< count($data['prd']); $x++) {
echo $data['prd'][$x] . " costs " . $data['price'][$x] . PHP_EOL;
}