Запара с in_array. нужно разобраться!
Владмир Габдуллин
Ребята, какая то странность с in_array. Нужно сравнить каждый введеный новый тег(их может быть и несколько) из инпута с теми, что уже в базе(веденные ранее) и если нет совпадения, то записываем в базу, получается записываем только то, чего нет в $tags:
$fields['tags'] - теги из формы
$id_user = (int)$id_user;
$allowed = array();
$tags = M_Tags_user::Instance()->getByFieldset(array('id_user' =>$id_user));
       foreach($tags as $tag)
  $allowed[] = $tag["tag"];

if(!empty($fields['tags']) && $tags){
$single = explode(',', $fields['tags']);
foreach($single as $fields_tag){
     if(!in_array($fields_tag, $allowed)){
if($fields_tag !="")
  M_Tags_user::Instance()->add_one_tag($fields_tag,$id_user);
       }
}
}
так вот in_array пропускает во внутрь условия и те что уже добавлены в бд - почему, что я не так сделал?
Хотя может как то по другому надо сделать?! Помогите!
0 чел.