P
P
paulvales2016-01-17 12:53:50
PHP
paulvales, 2016-01-17 12:53:50

Why doesn't array_diff output the full difference?

Hello, there are two arrays,

60 000 тг.
50 000 тг.
3 000 тг.
Обмен
75 000 тг.
5 000 тг.
68 000 тг.
69 000 тг.
65 000 тг.
12 000 тг.
25 000 тг.
140 000 тг.
300 000 тг.
90 000 тг.
30 000 тг.
60 000 тг.
95 000 тг.
Обмен
60 000 тг.
45 000 тг.
35 000 тг.
115 000 тг.
17 000 тг.
198 000 тг.
60 000 тг.
180 000 тг.
70 000 тг.
60 000 тг.
145 000 тг.
55 000 тг.
15 000 тг.
3 000 тг.
63 000 тг.
15 000 тг.
95 000 тг.
100 000 тг.
60 000 тг.
100 000 тг.
100 000 тг.

47 000 тг.----разница
27 000 тг.----разница
100 000 тг.----разница
60 000 тг.
50 000 тг.
3 000 тг.
Обмен
75 000 тг.
5 000 тг.
68 000 тг.
69 000 тг.
65 000 тг.
12 000 тг.
25 000 тг.
140 000 тг.
300 000 тг.
90 000 тг.
30 000 тг.
60 000 тг.
95 000 тг.
Обмен
60 000 тг.
45 000 тг.
35 000 тг.
115 000 тг.
17 000 тг.
198 000 тг.
60 000 тг.
180 000 тг.
70 000 тг.
60 000 тг.
145 000 тг.
55 000 тг.
15 000 тг.
3 000 тг.
63 000 тг.
15 000 тг.
95 000 тг.
100 000 тг.

$result = array_diff($a, $b); - outputs: Array ( [0] => 47 000 tenge [1] => 27 000 tenge ) Although it should still output "100 000 tenge." What am I doing wrong?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
Алексей Уколов, 2016-01-17
@alexey-m-ukolov Куратор тега PHP

100 000 тг. есть в первом массиве трижды и во втором дважды, так что array_diff, который сравнивает array1 с одним или несколькими другими массивами и возвращает значения из array1, которые отсутствуют во всех других массивах, делает всё верно.
Опишите свою задачу нормально, чтобы вам можно было порекомендовать какой-то подходящий инструмент.

R
Rsa97, 2016-01-17
@Rsa97

Если вы показали сами массивы $a и $b, то в массиве $b есть элемент "100 000 тг.".
Ну или покажите содержимое массивов через print_r()

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question