Вывод значений из двух массива, исключающие повтор

1. Don (04.08.2015 / 16:26)
<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red");
$array2 = array("a" => "green", "yellow", "red");
$result = array_diff_assoc($array1, $array2);
print_r($result);
?>
Вот пример реализации этой задачи, как решить его подругому? как то через foreach решал, уже не помню)

2. Дмитрий (04.08.2015 / 18:04)
<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red"); 
$array2 = array("a" => "green", "yellow", "red"); 

$result = array_unique(array_merge($array1, $array2)); 
var_dump($result);
Ф-я array_merge() выполняет слияние двух массивов.
Ф-я array_unique() выполняет удаление повторов после слияния.

array[5]
   a => "green"
   b => "brown"
   c => "blue"
   0 => "red"
   1 => "yellow"


3. Don (05.08.2015 / 08:25)
dima.london (4 Августа 2015 / 18:04)
<?php
$array1 = array("a" => "green", "b" => "brown", "c" => "blue", "red"); 
$array2 = array("a" => "green", "yellow", "red"); 

$result = array_unique(array_merge($array1, $array2)); 
var_dump($result);
Ф-я array_merge() выполняет слияние двух массивов.
Ф-я array_unique() выполняет удаление повторов после слияния.

array[5]
   a => "green"
   b => "brown"
   c => "blue"
   0 => "red"
   1 => "yellow"
а если у меня array1 является многомерным массивом, а array2 одномерным, в таком случаи как можно сделать? array1 привести к одномерному? а потом сливать их и убрать повторяющие?

4. Zдешний (05.08.2015 / 09:16)
SuLeYmaN (5 Августа 2015 / 10:25)
а если у меня array1 является многомерным массивом, а array2 одномерным, в таком случаи как можно сделать? array1 привести к одномерному? а потом сливать их и убрать повторяющие?
Для этой цели служит array_merge_recursive - рекурсивно сливает массивы

5. Don (05.08.2015 / 10:33)
А как исключить из вывода определенные значения? из БД допустим
типо черного списка
некий список
$arr1 = array('xрень', 'х**', 'п****');
$arr2 = mysql_featch_assoc($user);

6. Zдешний (05.08.2015 / 12:35)
SuLeYmaN (5 Августа 2015 / 12:33)
А как исключить из вывода определенные значения? из БД допустим
типо черного списка
некий список
$arr1 = array('xрень', 'х**', 'п****');
$arr2 = mysql_featch_assoc($user);
Можно foreach пробежаться по массиву, сравнивая с массивом черного списка, in_array для этой цели служит. Убрать значение из массива - unset

URL: https://visavi.net/topics/42535