Salut, je crée code pour faire met les occurence de deux tableaus en autre tableaux mais le probléme que je trouve que les autres cases des ces deux tableaux je trouve pas une solution pour met en l'autre tableau
voila code :

<?php

$a = array('m','o','p','f');
$b = array('o','p','m','d');
$e = [];$h = [];
$i=0;$j=0;$s=0;

foreach ($a as $v)
    foreach ($b as $va)
{
    {
        if ($v == $va ) { $e[$i] = $v; $i++; }
        else $h[$j] = $v; $j++;

    }

}

echo '<pre>';

print_r($e);
print_r($h);

echo '</pre>';

voilà un exemple :
j'ai ses tableaux:

$a = array('m','o','p','f');
$b = array('o','p','m','d');

comment trouvée la troixiéme tableau est :
$e= array('m','o','p','f','d');

comment faire cà et merci d'avance

4 réponses


Bonjour,
la fonction array_merge devrait vous aidez.

med001
Auteur

@Carouge mais comment on ajoute les cases qui ne sont pas identiques !!

Je cite "array_merge() rassemble les éléments d'un ou de plusieurs tableaux en ajoutant les valeurs de l'un à la fin de l'autre. Le résultat est un tableau.
Si les tableaux d'entrées ont des clés en commun, alors, la valeur finale pour cette clé écrasera la précédente. Cependant, si les tableaux contiennent des clés numériques, la valeur finale n'écrasera pas la valeur originale, mais sera ajoutée."

Bonjour,
Sinon tu as les fonctions array_intersect et array_diff qui feront automatiquement tes tableaux de croisements et valeurs uniques,
Soit un merge des deux : array_merge(array_intersect($a,$b),array_diff($a,$b),array_diff($b,$a))
Soit array_unique(array_merge($a,$b)) mais qui ne marche pas si tu as deux fois la même valeur dans un des deux tableaux