PHP-如果值2大于1,则拆分数组(
今天晚上,我一直在努力研究如何将数组拆分为许多数组,这些数组由数组中的一个值定义 我可以得到这个值PHP-如果值2大于1,则拆分数组(,php,arrays,split,Php,Arrays,Split,今天晚上,我一直在努力研究如何将数组拆分为许多数组,这些数组由数组中的一个值定义 我可以得到这个值 $array = array ( array ("Apple", 10), array("Ball", 5) ); 然后我希望Apple有10个数组,其中值为“Apple”,Ball有5个数组,其中值为“Ball” 然后我想到了这个,但是输出似乎很奇怪 $newarray = array(); foreach($array as $val): for($i = 1;
$array = array (
array ("Apple", 10),
array("Ball", 5)
);
然后我希望Apple有10个数组,其中值为“Apple”,Ball有5个数组,其中值为“Ball”
然后我想到了这个,但是输出似乎很奇怪
$newarray = array();
foreach($array as $val):
for($i = 1; $i <= $val[1]; $i++):
$newarray[$i] = $val[0];
endfor;
endforeach;
print_r($newarray);
// Array ( [0] => Ball [1] => Ball [2] => Ball [3] => Ball [4] => Ball [5] => Ball [6] => Apple [7] => Apple [8] => Apple [9] => Apple [10] => Apple )
$newarray=array();
foreach($val形式的数组):
对于($i=1;$i Ball[1]=>Ball[2]=>Ball[3]=>Ball[4]=>Ball[5]=>Ball[6]=>Apple[7]=>Apple[8]=>Apple[9]=>Apple[10]=>Apple)
希望你们理解我的问题,希望有人能理解
请提前通知,谢谢。您可以在此提供帮助:
$result = array();
foreach ($array as $sub) {
$result[] = array_fill(0, $sub[1], $sub[0]);
}
print_r($result);
请参见此处的操作:如果我理解正确,其目的是创建一个包含10个“苹果”和另一个包含5个“球”的数组
太好了!但我不想要这样的多维数组。有人能帮我吗?这又酷又短。很好。我在上面的评论中没有自己的想法,但它起作用了。:)太好了,谢谢!
$array = array (
array ("Apple", 10),
array("Ball", 5)
);
$newarray = array();
foreach($array as $key => $val){
$tmparray = null;
for($i = 1; $i <= $val[1]; $i++){
$tmparray[$i] = $val[0];
}
$newarray[] = $tmparray;
}
print_r($newarray);
Array
(
[0] => Array
(
[1] => Apple
[2] => Apple
[3] => Apple
[4] => Apple
[5] => Apple
[6] => Apple
[7] => Apple
[8] => Apple
[9] => Apple
[10] => Apple
)
[1] => Array
(
[1] => Ball
[2] => Ball
[3] => Ball
[4] => Ball
[5] => Ball
)
)