#php
Вопрос:
$arr1 = array(
1 => array(
30 => 100
31 => 800
),
2 => array(
30 => 200
31 => 900
),
3 => array(
30 => 300
31 => 100
),
4 => array(
30 => 400
31 => 110
),
5 => array(
30 => 500
31 => 120
),
6 => array(
30 => 600
31 => 130
),
7 => array(
30 => 260
31 => 140
)
);
$arr2 = array(
0 => array(
id => 30
),
1 => array(
id => 31
)
)
Мне нужно перебрать $arr1 и вставить таким образом
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('30','1',100);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('30','2',200);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('30','3',300);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('30','4',300);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('30','5',500);
и так далее
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('31','1',900);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('31','2',900);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('31','3',100);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('31','4',110);
INSERT INTO tablename (option_value_id,duration_id,price) VALUES ('31','5',120);
и так далее. Как я могу это сделать?
Ответ №1:
foreach ($arr2 as $id)
{
foreach ($arr1 as $i => $v)
{
query("insert into tablename (option_value_id,duration_id,price)"
. " values ('$id','$i',$v)");
}
}
Комментарии:
1. @user286389 Два замечания: 1. PHP очень удобен при работе с массивами (
foreach
, все массивы ассоциативны (карты)). 2. Вы можете отредактировать свой профиль и установить приличное имя пользователя (я извиняюсь, если 286389 на самом деле имеет значение, и это номер, выбранный вами 🙂