2014-12-08 3 views
-3

Я новичок в PHP. Я пытаюсь сделать операцию в этом массиве. Я хочу вставить этот массив в мою базу данных, как и для многих в таблице. Но перед вставкой мне нужно изменить значения массива.Как манипулировать этим массивом?

это мой массив.

$services=[0=>('id_e'=>91701,'id_s'=03), 
      1=>('id_e'=>'','id_s'=>01), 
      2=>('id_e'=>'','id_s'=>02) 
      ]; 

Это должно стать следующим, как следует.

$services=[0=>('id_e'=>91701,'id_s'=>03), 
      1=>('id_e'=>'91701','id_s'=>01), 
      2=>('id_e'=>'91701','id_s'=>02) 
      ]; 

И тогда я хочу вставить в базу данных. Любая идея, пожалуйста?

+0

Итак, если 'id_e' пуст, установите его в предыдущей непустой' id_e'? –

+0

@Glavic: Точно –

+0

Спасибо, что это очень четкая демонстрация. –

ответ

1

Попробуйте это:

$id_e = null; 
foreach ($services as &$row) { 
    if ($row['id_e']) $id_e = $row['id_e']; 
    else $row['id_e'] = $id_e; 
} 
unset($row); 

demo

+0

большое спасибо! Очень четкая демонстрация. –

+1

@DevarajanSekaran: если этот ответ работает на вас, пожалуйста, ** [принять его] (http://meta.stackexchange.com/a/5235) **. И сделайте это для всех ваших задаваемых вопросов. –

+1

@Devarajan: как уже было запрошено, здесь обычно щелкнуть галочку рядом с вопросами, если что-то вам помогло. Он удаляет вопрос из оставшихся без ответа списков и благодарит человека, который помог вам. Я рассмотрю ваш вопрос и не буду объявлять по запросу, как только вы это сделаете. – halfer

Смежные вопросы