jelle-s / arraykeycombiner
通过搜索交集并将它们添加到主数组中来组合数组。使用分隔符组合键。
1.0.2
2016-12-26 11:55 UTC
Requires
This package is auto-updated.
Last update: 2024-09-12 21:20:24 UTC
README
通过搜索交集并将它们添加到主数组中来组合数组。使用分隔符组合键。
use Jelle_S\Util\Combiner\ArrayKeyCombiner; // Search this array of arrays for intersections and extract them, using a // delimiter to combine the keys. Limit the number of iterations to search for // intersections to 10.000, limit the minimum size of intersections to 3, set // the key delimiter to a comma. $arrays = array( array( 'a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 9, ), array( 'a' => 1, 'b' => 2, 'c' => 3, 'e' => 9, ), array( 'a' => 1, 'b' => 42, 'c' => 3, 'd' => 4, ), array( 'b' => 42, 'c' => 3, 'a' => 1, ), array( 'z' => 26, 'e' => 9, 'a' => 1, ), ); $combiner = new Jelle_S\Util\Combiner\ArrayKeyCombiner($arrays, 3, 10000, ','); print_r($combiner->combine());
输出
Array
(
[4] => Array
(
[a] => 1
[e] => 9
[z] => 26
)
[0,1] => Array
(
[a] => 1
[b] => 2
[c] => 3
[e] => 9
)
[2,3] => Array
(
[a] => 1
[c] => 3
[b] => 42
)
[2,0] => Array
(
[d] => 4
)
)
数组中键 '4' 的 'a' 和 'z' 键未组合,因为组合的阈值为 3,组合它们将只产生一个包含两个元素的组合数组。
具有键 '2' 和 '0' 的数组 已组合,因为在提取组合后,这两个数组是相同的,阈值对 相同 的数组没有影响,它们总是被组合。