php split 较小,偶数阵列
我有一个功能,应该将我的阵列分解为更小,均匀分布式的数组,但是,它似乎似乎它在途中重复了我的数据。 如果有人可以帮助我,那将是很棒的。
这是源数组:
这是一个函数 php, 适用于 split 大批:
这是结果 split /它以某种方式将元素复制到源数组中成较小的数组/:
^^ 如您所见,新创建的较小数组中的源数组中有重复。
我以为我可以使用多维重复删除功能删除重复项,但它没有工作。 我想我的问题在于这个功能 array_split.
你有一些想法吗? :/
这是源数组:
Array
/
[0] => stdClass Object
/
[bid] => 42
[name] => Ray White Mordialloc
[imageurl] => sp_raywhite.gif
[clickurl] => [url=http://www.raywhite.com/]http://www.raywhite.com/[/url]
/
[1] => stdClass Object
/
[bid] => 48
[name] => Beachside Osteo
[imageurl] => sp_beachside.gif
[clickurl] => [url=http://www.beachsideosteo.com.au/]http://www.beachsideosteo.com.au/[/url]
/
[2] => stdClass Object
/
[bid] => 53
[name] => Carmotive
[imageurl] => sp_carmotive.jpg
[clickurl] => [url=http://www.carmotive.com.au/]http://www.carmotive.com.au/[/url]
/
[3] => stdClass Object
/
[bid] => 51
[name] => Richmond and Bennison
[imageurl] => sp_richmond.jpg
[clickurl] => [url=http://www.richbenn.com.au/]http://www.richbenn.com.au/[/url]
/
[4] => stdClass Object
/
[bid] => 50
[name] => Letec
[imageurl] => sp_letec.jpg
[clickurl] => www.letec.biz
/
[5] => stdClass Object
/
[bid] => 39
[name] => Main Street Mordialloc
[imageurl] => main street cafe.jpg
[clickurl] =>
/
[6] => stdClass Object
/
[bid] => 40
[name] => Ripponlea Mitsubishi
[imageurl] => sp_mitsubishi.gif
[clickurl] =>
/
[7] => stdClass Object
/
[bid] => 34
[name] => Adrianos Pizza & Pasta
[imageurl] => sp_adrian.gif
[clickurl] =>
/
[8] => stdClass Object
/
[bid] => 59
[name] => Pure Sport
[imageurl] => sp_psport.jpg
[clickurl] => [url=http://www.puresport.com.au/]http://www.puresport.com.au/[/url]
/
[9] => stdClass Object
/
[bid] => 33
[name] => Two Brothers
[imageurl] => sp_2brothers.gif
[clickurl] => [url=http://www.2brothers.com.au/]http://www.2brothers.com.au/[/url]
/
[10] => stdClass Object
/
[bid] => 52
[name] => Mordialloc Travel and Cruise
[imageurl] => sp_morditravel.jpg
[clickurl] => [url=http://www.yellowpages.com.au/vic/mordialloc/mordialloc-travel-cruise-13492525-listing.html]http://www.yellowpages.com.au/ ... .html[/url]
/
[11] => stdClass Object
/
[bid] => 57
[name] => Southern Suburbs Physiotherapy Centre
[imageurl] => sp_sspc.jpg
[clickurl] => [url=http://www.sspc.com.au]http://www.sspc.com.au[/url]
/
[12] => stdClass Object
/
[bid] => 54
[name] => PPM Builders
[imageurl] => sp_ppm.jpg
[clickurl] => [url=http://www.hotfrog.com.au/Companies/P-P-M-Builders]http://www.hotfrog.com.au/Companies/P-P-M-Builders[/url]
/
[13] => stdClass Object
/
[bid] => 36
[name] => Big River
[imageurl] => sp_bigriver.gif
[clickurl] =>
/
[14] => stdClass Object
/
[bid] => 35
[name] => Bendigo Bank Parkdale / Mentone East
[imageurl] => sp_bendigo.gif
[clickurl] => [url=http://www.bendigobank.com.au]http://www.bendigobank.com.au[/url]
/
[15] => stdClass Object
/
[bid] => 56
[name] => Logical Services
[imageurl] => sp_logical.jpg
[clickurl] =>
/
[16] => stdClass Object
/
[bid] => 58
[name] => Dicount Lollie Shop
[imageurl] => new dls logo.jpg
[clickurl] =>
/
[17] => stdClass Object
/
[bid] => 46
[name] => Patterson Securities
[imageurl] => cmyk patersons_withtag.jpg
[clickurl] =>
/
[18] => stdClass Object
/
[bid] => 44
[name] => Mordialloc Personal Trainers
[imageurl] => sp_mordipt.gif
[clickurl] => #
/
[19] => stdClass Object
/
[bid] => 37
[name] => Mordialloc Cellar Door
[imageurl] => sp_cellardoor.gif
[clickurl] =>
/
[20] => stdClass Object
/
[bid] => 41
[name] => Print House Graphics
[imageurl] => sp_printhouse.gif
[clickurl] =>
/
[21] => stdClass Object
/
[bid] => 55
[name] => 360South
[imageurl] => sp_360.jpg
[clickurl] =>
/
[22] => stdClass Object
/
[bid] => 43
[name] => Systema
[imageurl] => sp_systema.gif
[clickurl] =>
/
[23] => stdClass Object
/
[bid] => 38
[name] => Lowe Financial Group
[imageurl] => sp_lowe.gif
[clickurl] => [url=http://lowefinancial.com/]http://lowefinancial.com/[/url]
/
[24] => stdClass Object
/
[bid] => 49
[name] => Kim Reed Conveyancing
[imageurl] => sp_kimreed.jpg
[clickurl] =>
/
[25] => stdClass Object
/
[bid] => 45
[name] => Mordialloc Sporting Club
[imageurl] => msc logo.jpg
[clickurl] =>
/
/
这是一个函数 php, 适用于 split 大批:
function split_array/$array, $slices/ {
$perGroup = floor/count/$array/ / $slices/;
$Remainder = count/$array/ % $slices ;
$slicesArray = array//;
$i = 0;
while/ $i < $slices / {
$slicesArray[$i] = array_slice/$array, $i * $perGroup, $perGroup/;
$i++;
}
if / $i == $slices / {
if /$Remainder > 0 && $Remainder < $slices/ {
$z = $i * $perGroup +1;
$x = 0;
while /$x < $Remainder/ {
$slicesRemainderArray = array_slice/$array, $z, $Remainder+$x/;
$remainderItems = array_merge/$slicesArray[$x],$slicesRemainderArray/;
$slicesArray[$x] = $remainderItems;
$x++;
$z++;
}
}
};
return $slicesArray;
}
这是结果 split /它以某种方式将元素复制到源数组中成较小的数组/:
Array
/
[0] => Array
/
[0] => stdClass Object
/
[bid] => 57
[name] => Southern Suburbs Physiotherapy Centre
[imageurl] => sp_sspc.jpg
[clickurl] => [url=http://www.sspc.com.au]http://www.sspc.com.au[/url]
/
[1] => stdClass Object
/
[bid] => 35
[name] => Bendigo Bank Parkdale / Mentone East
[imageurl] => sp_bendigo.gif
[clickurl] => [url=http://www.bendigobank.com.au]http://www.bendigobank.com.au[/url]
/
[2] => stdClass Object
/
[bid] => 38
[name] => Lowe Financial Group
[imageurl] => sp_lowe.gif
[clickurl] => [url=http://lowefinancial.com/]http://lowefinancial.com/[/url]
/
[3] => stdClass Object
/
[bid] => 39
[name] => Main Street Mordialloc
[imageurl] => main street cafe.jpg
[clickurl] =>
/
[4] => stdClass Object
/
[bid] => 48
[name] => Beachside Osteo
[imageurl] => sp_beachside.gif
[clickurl] => [url=http://www.beachsideosteo.com.au/]http://www.beachsideosteo.com.au/[/url]
/
[5] => stdClass Object
/
[bid] => 33
[name] => Two Brothers
[imageurl] => sp_2brothers.gif
[clickurl] => [url=http://www.2brothers.com.au/]http://www.2brothers.com.au/[/url]
/
[6] => stdClass Object
/
[bid] => 40
[name] => Ripponlea Mitsubishi
[imageurl] => sp_mitsubishi.gif
[clickurl] =>
/
/
[1] => Array
/
[0] => stdClass Object
/
[bid] => 44
[name] => Mordialloc Personal Trainers
[imageurl] => sp_mordipt.gif
[clickurl] => #
/
[1] => stdClass Object
/
[bid] => 41
[name] => Print House Graphics
[imageurl] => sp_printhouse.gif
[clickurl] =>
/
[2] => stdClass Object
/
[bid] => 39
[name] => Main Street Mordialloc
[imageurl] => main street cafe.jpg
[clickurl] =>
/
[3] => stdClass Object
/
[bid] => 48
[name] => Beachside Osteo
[imageurl] => sp_beachside.gif
[clickurl] => [url=http://www.beachsideosteo.com.au/]http://www.beachsideosteo.com.au/[/url]
/
[4] => stdClass Object
/
[bid] => 33
[name] => Two Brothers
[imageurl] => sp_2brothers.gif
[clickurl] => [url=http://www.2brothers.com.au/]http://www.2brothers.com.au/[/url]
/
[5] => stdClass Object
/
[bid] => 40
[name] => Ripponlea Mitsubishi
[imageurl] => sp_mitsubishi.gif
[clickurl] =>
/
/
[2] => Array
/
[0] => stdClass Object
/
[bid] => 56
[name] => Logical Services
[imageurl] => sp_logical.jpg
[clickurl] =>
/
[1] => stdClass Object
/
[bid] => 43
[name] => Systema
[imageurl] => sp_systema.gif
[clickurl] =>
/
[2] => stdClass Object
/
[bid] => 48
[name] => Beachside Osteo
[imageurl] => sp_beachside.gif
[clickurl] => [url=http://www.beachsideosteo.com.au/]http://www.beachsideosteo.com.au/[/url]
/
[3] => stdClass Object
/
[bid] => 33
[name] => Two Brothers
[imageurl] => sp_2brothers.gif
[clickurl] => [url=http://www.2brothers.com.au/]http://www.2brothers.com.au/[/url]
/
[4] => stdClass Object
/
[bid] => 40
[name] => Ripponlea Mitsubishi
[imageurl] => sp_mitsubishi.gif
[clickurl] =>
/
/
[3] => Array
/
[0] => stdClass Object
/
[bid] => 53
[name] => Carmotive
[imageurl] => sp_carmotive.jpg
[clickurl] => [url=http://www.carmotive.com.au/]http://www.carmotive.com.au/[/url]
/
[1] => stdClass Object
/
[bid] => 45
[name] => Mordialloc Sporting Club
[imageurl] => msc logo.jpg
[clickurl] =>
/
[2] => stdClass Object
/
[bid] => 33
[name] => Two Brothers
[imageurl] => sp_2brothers.gif
[clickurl] => [url=http://www.2brothers.com.au/]http://www.2brothers.com.au/[/url]
/
[3] => stdClass Object
/
[bid] => 40
[name] => Ripponlea Mitsubishi
[imageurl] => sp_mitsubishi.gif
[clickurl] =>
/
/
[4] => Array
/
[0] => stdClass Object
/
[bid] => 59
[name] => Pure Sport
[imageurl] => sp_psport.jpg
[clickurl] => [url=http://www.puresport.com.au/]http://www.puresport.com.au/[/url]
/
[1] => stdClass Object
/
[bid] => 54
[name] => PPM Builders
[imageurl] => sp_ppm.jpg
[clickurl] => [url=http://www.hotfrog.com.au/Companies/P-P-M-Builders]http://www.hotfrog.com.au/Companies/P-P-M-Builders[/url]
/
[2] => stdClass Object
/
[bid] => 40
[name] => Ripponlea Mitsubishi
[imageurl] => sp_mitsubishi.gif
[clickurl] =>
/
/
[5] => Array
/
[0] => stdClass Object
/
[bid] => 46
[name] => Patterson Securities
[imageurl] => cmyk patersons_withtag.jpg
[clickurl] =>
/
[1] => stdClass Object
/
[bid] => 34
[name] => Adriano's Pizza & Pasta
[imageurl] => sp_adrian.gif
[clickurl] => #
/
/
[6] => Array
/
[0] => stdClass Object
/
[bid] => 55
[name] => 360South
[imageurl] => sp_360.jpg
[clickurl] =>
/
[1] => stdClass Object
/
[bid] => 37
[name] => Mordialloc Cellar Door
[imageurl] => sp_cellardoor.gif
[clickurl] =>
/
/
[7] => Array
/
[0] => stdClass Object
/
[bid] => 49
[name] => Kim Reed Conveyancing
[imageurl] => sp_kimreed.jpg
[clickurl] =>
/
[1] => stdClass Object
/
[bid] => 58
[name] => Dicount Lollie Shop
[imageurl] => new dls logo.jpg
[clickurl] =>
/
/
[8] => Array
/
[0] => stdClass Object
/
[bid] => 51
[name] => Richmond and Bennison
[imageurl] => sp_richmond.jpg
[clickurl] => [url=http://www.richbenn.com.au/]http://www.richbenn.com.au/[/url]
/
[1] => stdClass Object
/
[bid] => 52
[name] => Mordialloc Travel and Cruise
[imageurl] => sp_morditravel.jpg
[clickurl] => [url=http://www.yellowpages.com.au/vic/mordialloc/mordialloc-travel-cruise-13492525-listing.html]http://www.yellowpages.com.au/ ... .html[/url]
/
/
[9] => Array
/
[0] => stdClass Object
/
[bid] => 50
[name] => Letec
[imageurl] => sp_letec.jpg
[clickurl] => www.letec.biz
/
[1] => stdClass Object
/
[bid] => 36
[name] => Big River
[imageurl] => sp_bigriver.gif
[clickurl] =>
/
/
/
^^ 如您所见,新创建的较小数组中的源数组中有重复。
我以为我可以使用多维重复删除功能删除重复项,但它没有工作。 我想我的问题在于这个功能 array_split.
你有一些想法吗? :/
没有找到相关结果
已邀请:
8 个回复
裸奔
赞同来自:
http://www.php.net/array_chunk
, 这完全是它。
好吧,我不想调试,所以我写了一个版本
http://www.php.net/array_reduce
:
给
君笑尘
赞同来自:
龙天
赞同来自:
http://www.php.net/manual/en/f ... k.php
[只是做出一个明显的答案 Artefacto 更明确]
诸葛浮云
赞同来自:
如果您知道缺少多少件物品 /
/, 为什么您不仅仅是生成剩余的片段和弹出元素
只要他不空?
顺便说一下,您可以使用此过程和整个数组。
窦买办
赞同来自:
小姐请别说爱
赞同来自:
如果项目总数不分为所需的块数,则不会均匀填充数组; 最后一个块可以小于第一个块 /例如,如果你有七个元素和你 split 分为三个街区,您将获得包含三个,三个和一个项目的阵列/.
以下实现将尝试平滑它,以便阵列的大小更多,即使这是您需要的,例如,如果您有七个元素,则会收到包含三个,两个和两个元素的块数组。 它仍然不是光滑的,但更顺畅。 它返回使用
, 如果数字均匀分为列数,因为它将更快 /特别是如果你有大号/.
诸葛浮云
赞同来自:
注意:字符串 Emty 不包括在两个选项中。 它仅用于验证状态。
小明明
赞同来自:
您可以使用两个阵列的所有元素和值 foreach easity