Это в некоторой степени зависит от того, насколько большим будет массив, и есть несколько вариантов.
Если он, как правило, довольно маленький, array_diff, вероятно, является самым быстрым последовательным решением, как писал Хорхе.
Еще одно решение для немного больших наборов:
$data = array_flip($data);
unset($data[$item2remove]);
$data = array_flip($data);
Но это хорошо, только если у вас нет дубликатов.В зависимости от вашей рабочей нагрузки может быть также выгодно гарантировать уникальность предметов.