
php 把数组按条件分成不同的数组
Array([0]=>In/4833895_0001.jpg[1]=>In/4834113_0002.jpg[2]=>Out/4834223_0001.jpg[3]=>I...
Array (
[0] => In/4833895_0001.jpg
[1] => In/4834113_0002.jpg
[2] => Out/4834223_0001.jpg
[3] => In/4834301_0003.jpg
[4] => Out/4834442_0002.jpg
[5] => In/4834520_0004.jpg
[6] => Out/4834598_0003.jpg
[7] => In/4834723_0005.jpg
[8] => Out/4834817_0004.jpg
[9] => In/4834863_0006.jpg
[10] => Out/4835004_0005.jpg
[11] => In/4835067_0007.jpg
[12] => Out/4835254_0006.jpg
[13] => Out/4835410_0007.jpg
[14] => Out/04835629_0008.jpg
[15] => Out/4835785_0009.jpg
)
把这个数组按条件分成下面2个数组,进来2个数组第一张都是black.jpg,当是in的时候就连着一起放在$in_arr数组中,当是out的时候就判断和上一张相减<500的时候,out的就放在$out_arr数组中,但同时$in_arr中要再插入一张和上一张一样的。
$out_arr=
Array (
[0] => images/block.jpg
[1] => images/block.jpg
[2] => images/block.jpg
[3] => Out/4834223_0001.jpg
[4] => Out/4834223_0001.jpg
[5] => Out/4834442_0002.jpg
[6] => Out/4834442_0002.jpg
[7] => Out/4834598_0003.jpg
[8] => Out/4834598_0003.jpg
[9] => Out/4834817_0004.jpg
[10] => Out/4834817_0004.jpg
[11] => Out/4835004_0005.jpg
[12] => Out/4835004_0005.jpg
[13] => Out/4835254_0006.jpg
[14] => Out/4835410_0007.jpg
[15] => Out/4835629_0008.jpg
[16] => Out/4835785_0009.jpg
)
$in_arr=
Array (
[0] => images/block.jpg
[1] => In/4833895_0001.jpg
[2] => In/4834113_0002.jpg
[3] => In/4834113_0002.jpg
[4] => In/4834301_0003.jpg
[5] => In/4834301_0003.jpg
[6] => In/4834520_0004.jpg
[7] => In/4834520_0004.jpg
[8] => In/4834723_0005.jpg
[9] => In/4834723_0005.jpg
[10] => In/4834863_0006.jpg
[11] => Out/4835004_0005.jpg
[12] => In/4835067_0007.jpg
[13] => In/4835067_0007.jpg
[14] => images/block.jpg
[15] => images/block.jpg
[16] => images/block.jpg
) 展开
[0] => In/4833895_0001.jpg
[1] => In/4834113_0002.jpg
[2] => Out/4834223_0001.jpg
[3] => In/4834301_0003.jpg
[4] => Out/4834442_0002.jpg
[5] => In/4834520_0004.jpg
[6] => Out/4834598_0003.jpg
[7] => In/4834723_0005.jpg
[8] => Out/4834817_0004.jpg
[9] => In/4834863_0006.jpg
[10] => Out/4835004_0005.jpg
[11] => In/4835067_0007.jpg
[12] => Out/4835254_0006.jpg
[13] => Out/4835410_0007.jpg
[14] => Out/04835629_0008.jpg
[15] => Out/4835785_0009.jpg
)
把这个数组按条件分成下面2个数组,进来2个数组第一张都是black.jpg,当是in的时候就连着一起放在$in_arr数组中,当是out的时候就判断和上一张相减<500的时候,out的就放在$out_arr数组中,但同时$in_arr中要再插入一张和上一张一样的。
$out_arr=
Array (
[0] => images/block.jpg
[1] => images/block.jpg
[2] => images/block.jpg
[3] => Out/4834223_0001.jpg
[4] => Out/4834223_0001.jpg
[5] => Out/4834442_0002.jpg
[6] => Out/4834442_0002.jpg
[7] => Out/4834598_0003.jpg
[8] => Out/4834598_0003.jpg
[9] => Out/4834817_0004.jpg
[10] => Out/4834817_0004.jpg
[11] => Out/4835004_0005.jpg
[12] => Out/4835004_0005.jpg
[13] => Out/4835254_0006.jpg
[14] => Out/4835410_0007.jpg
[15] => Out/4835629_0008.jpg
[16] => Out/4835785_0009.jpg
)
$in_arr=
Array (
[0] => images/block.jpg
[1] => In/4833895_0001.jpg
[2] => In/4834113_0002.jpg
[3] => In/4834113_0002.jpg
[4] => In/4834301_0003.jpg
[5] => In/4834301_0003.jpg
[6] => In/4834520_0004.jpg
[7] => In/4834520_0004.jpg
[8] => In/4834723_0005.jpg
[9] => In/4834723_0005.jpg
[10] => In/4834863_0006.jpg
[11] => Out/4835004_0005.jpg
[12] => In/4835067_0007.jpg
[13] => In/4835067_0007.jpg
[14] => images/block.jpg
[15] => images/block.jpg
[16] => images/block.jpg
) 展开
1个回答
展开全部
$arr1 = array("In/4833895_0001.jpg","In/4834113_0002.jpg","Out/4834223_0001.jpg","In/4834301_0003.jpg","Out/4834442_0002.jpg","In/4834520_0004.jpg","Out/4834598_0003.jpg","In/4834723_0005.jpg","Out/4834817_0004.jpg","In/4834863_0006.jpg","Out/4835004_0005.jpg","In/4835067_0007.jpg","Out/4835254_0006.jpg","Out/4835410_0007.jpg","Out/04835629_0008.jpg","Out/4835785_0009.jpg");
foreach($arr1 as $k => $val){
if(strpos($val,"In")===0){
$inArr[] = $val;
}else{
$outArr[] = $val;
}
}
print_r($inArr);
echo "<br>";
print_r($outArr);
Array
(
[0] => In/4833895_0001.jpg
[1] => In/4834113_0002.jpg
[2] => In/4834301_0003.jpg
[3] => In/4834520_0004.jpg
[4] => In/4834723_0005.jpg
[5] => In/4834863_0006.jpg
[6] => In/4835067_0007.jpg
)
Array
(
[0] => Out/4834223_0001.jpg
[1] => Out/4834442_0002.jpg
[2] => Out/4834598_0003.jpg
[3] => Out/4834817_0004.jpg
[4] => Out/4835004_0005.jpg
[5] => Out/4835254_0006.jpg
[6] => Out/4835410_0007.jpg
[7] => Out/04835629_0008.jpg
[8] => Out/4835785_0009.jpg
)
更多追问追答
追问
不是这样简单分成2个数组的,是要根据条件来的分的,比如前2个张都是in,放在in数组是没错,当第三张是out的时候要和上一张对比,小于500的时候。in数组对应的还要放一张in的就是第二张。这样in数组就有2张第二张图片,这样类推
追答
"小于500"?哪一段要小于500?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询