PHP使用数组值将数组划分为两个数组

时间:2012-05-07 05:13:04

标签: php arrays search split

我有一个如下所示的PHP数组:

  Array
    (
        [0] => 16
        [1] => 17
        [2] => 18
        [3] => 23
        [4] => 7
        [5] => 6
        [6] => 14
        [7] => 22
    )

我需要两个将这个数组拆分为两个数组的23值,如下所示:

 Array
    (
        [0] => 16
        [1] => 17
        [2] => 18
    )

 Array(
        [0] => 23
        [1] => 7
        [2] => 6
        [3] => 14
        [4] => 22
    )

任何人都可以通过PHP知道如何做到这一点。

1 个答案:

答案 0 :(得分:7)

下面代码中的23是硬编码的,只有在源数组中找到23值时才会拆分原始数组:

$arr = array(16, 17, 18, 23, 7, 6, 14, 22);
$split_by = array_search(23, $arr);

if ($split_by) {
    $first = array_slice($arr, 0, $split_by);
    $second = array_slice($arr, $split_by);

    var_dump($first, $second);
}

http://ideone.com/BPn7t

$arr = array(16, 17, 18, 23, 7, 6, 14, 22);
$split_by = array_search(23, $arr);

if ($split_by) {
    $first = array_slice($arr, 0, $split_by + 1);
    $second = array_slice($arr, $split_by + 1);

    var_dump($first, $second);
}

如果你需要在第一个数组中留下找到的值