array_column
много одинаковых значений, но с разными ключами. array_flip
для таких значений возвращает последний найденный ключ (например, 12856 вместо 32 в вашем случае).
Если значение встречается несколько раз, для обработки будет использоваться последний встреченный ключ, а все остальные будут потеряны.