/** * Update the specified resource in storage. * * @param \Illuminate\Http\Request $request * @param int $id * @return \Illuminate\Http\Response */ public function update(Request $request, $id) { $post = Post::find($id); $post->fill($request->input())->save(); $tags = tags_to_array($request->get('tags')); foreach ($tags as $tag) { $tag = Tag::firstOrCreate(['name' => $tag]); $post->tags()->detach($tag); $post->tags()->attach($tag); } return redirect(route('admin.posts')); }
function filter_tags($tags){ $tag_array = tags_to_array($tags); $incl = array(); $excl = array(); $filtered_array = array('include' => $incl, 'exclude' => $excl); for($i = 0; $i < sizeof($tag_array); $i++){ if($tag_array[$i][0] == '-'){ array_push($filtered_array['exclude'], substr($tag_array[$i], 1)); }else{ array_push($filtered_array['include'], $tag_array[$i]); } } //echo '<pre>'; //print_r($filtered_array); return $filtered_array; }