0
我有一個包含值的數組的長列表。我正在嘗試編寫一個腳本,用於在數組中找到重複的鍵/值對,並向我報告,以便我知道哪些數組具有相同的數據。處理PHP數組列表以找到包含相同鍵/值的數組
$array = array(
'one' => array('foo' => 'foo', 'baz' => 'baz', 'bar' => 'bar'),
'two' => array('foo' => 'foo', 'baz' => 'baz', 'nil' => 'nil'),
'three' => array('foo' => 'foo', 'var' => 'var'),
'four' => array('var' => 'var', 'nil' => 'nil'),
'five' => array('bar' => 'bar')
);
// First failed attempt
//call_user_func_array('array_intersect_assoc', $array));
結果應該能夠識別2個或更多數組共享相同的鍵和值。
array(
array(
'keys' => array('one', 'two', 'three'),
'values' => array('foo' => 'foo')
),
array(
'keys' => array('one', 'five'),
'values' => array('bar' => 'bar')
),
array(
'keys' => array('one', 'two'),
'values' => array('foo' => 'foo', 'baz' => 'baz')
),
array(
'keys' => array('three', 'four'),
'values' => array('var' => 'var')
),
array(
'keys' => array('two', 'four'),
'values' => array('nil' => 'nil')
),
);
什麼是處理這些數組的正確方法?我怎樣才能實現這樣的事情?
看看'array_intersect',這可能有所幫助。 – ngen 2012-03-02 00:30:57
如果所有的鍵和值都相等,你應該重新考慮你的數據結構。反正代表什麼? – phihag 2012-03-02 00:32:06
@phihag,我正在處理傳入我的應用程序的數據。我需要找到重複的東西,以便它們可以固定或合併在一起。 – Xeoncross 2012-03-02 00:44:51