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
)
展开
 我来答
浮华out
推荐于2016-04-21 · TA获得超过101个赞
知道小有建树答主
回答量:138
采纳率:0%
帮助的人:128万
展开全部
$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?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式