[PHP-users 21340]Re: 2つの配列の重複削除?について
真史
blueseeds @ harvestrain.com
2004年 4月 19日 (月) 18:47:17 JST
白水様
こんにちわ。はじめまして。まお@HN。です。
From: 白水 良 <ryoshiramizu @ hotmail.com> wrote.
Date: Mon, 19 Apr 2004 09:30:30 +0000
Subject: [PHP-users 21335]2つの配列の重複削除?について
> 上記の様な配列を比較し、最終的に$uniqueに、
>
> $unique[0] = 333333333
> $unique[1] = 444444444
> $unique[2] = 555555555
>
$num1 の配列と $num2 の配列を、
array_push または array_unshift を使って統合し、
統合した配列を、array_unique にかける、
というのは、どうでしょうか?
http://jp.php.net/manual/ja/function.array-push.php
http://jp.php.net/manual/ja/function.array-unshift.php
http://jp.php.net/manual/ja/function.array-unique.php
と、書いている間に、北沢様が返信をなさっていました。。
ただ、array_diffは(array-uniqueもそうですが)
元の配列のキーが維持されたままの結果を返すので、
比較する二つの配列の同じキー名がそれぞれユニークである場合、
結果の配列には同じキーを持つ二つのデータが存在してしまいます。
その当たりの処理も忘れないほうが良いかも。
私は上述の関数を使った場合は、冗長な気がしているのですが、
listとeachをつかってwhileでループさせて、キーを再作成しています。
ご参考までに。
+*+*++*+*+*+*+*+*+*+*+*+
真史(MAO)
Blueseed @ harvestrain.com
PHP-users メーリングリストの案内