質問
print_r($tokens);
$tokens = array_unique($tokens);
print_r($tokens);
次の出力を示します。
Array
(
[0] => Array
(
[Class_ID] => 32709
)
[1] => Array
(
[Class_ID] => 34682
)
[2] => Array
(
[Class_ID] => 34818
)
)
Array
(
[0] => Array
(
[Class_ID] => 32709
)
)
class_idの値が違うので、そのarray_uniqueで何も変えたくありません。どうしたの?
解決 2
多次元配列でarray_uniqueを実行するphp.netから関数を見つけました。
function super_unique($array) //array unique for multi
{
$result = array_map("unserialize", array_unique(array_map("serialize", $array)));
foreach ($result as $key => $value)
{
if ( is_array($value) )
{
$result[$key] = super_unique($value);
}
}
return $result;
}
他のヒント
から ドキュメンテーション:
ノート: 2つの要素は、場合にのみ等しいと見なされます
(string) $elem1 === (string) $elem2
言葉で:文字列表現が同じ場合。最初の要素が使用されます。
あなたのすべての要素 toString
それは Array
.
所属していません StackOverflow