Inserir um array no banco msql

Boa tarde! estou com dificuldade em inserir varios registro de um array de um vez no banco, alguem poderia me ajudar? segue um exemplo dos registro que quero adicionar!
Screenshot

no meu codigo eu to fazendo assim:
$c->fill($dataCurso)->save();

    //pega o id do curso salvo
    $idc = $c->user_id;
    $consulta = $request->all();
    foreach ($consulta as $l){
        $hora = new Horario();
        $hora->horario = $l['hora'];
        $hora->user_id = $idc;
        $hora->save();

    }

vamos la

ao meu ver tem duas formas

hora nao eh um array? faz um loop for nele e salva varios horarios ué

Boa noite!
Eu consegui fazer assim, segue o codigo mais ta com um problema ele ta gravando os registros em branco, tipo eu tenho 4 input do tipo text ai eu adiciono registro em dois input ele vai e grava 4, dois com registro e dois vazios;

$idc = $c->user_id;

    //Salva o array de horarios do curso
    $checkBox = array();

    $checkBox = Input::get('hora');
    $dataSet = [];
    foreach ($checkBox as $safety) {
        $dataSet[] = [
            'user_id' => $idc,
            'horario' => $safety
        ];
        DB::table('horarios')->insert($dataSet);
    }