public static function prep($tags) { $results = Tag::where_in('tag_name', $tags)->get(); $output = array(); foreach ($results as $tag) { $output[$tag->tag_name] = $tag; } foreach ($tags as $tag) { if (!array_key_exists($tag, $output)) { $tag = Tag::create(array('tag_name' => $tag)); $output[$tag->tag_name] = $tag; } } return $output; }