Сделать два индексных массива одним индексным массивом PHP

я просто хочу сделать два массива индексов одним массивом.

это мой код:

$intdate=array();
$arr=0;
foreach ($cek_cutay as $key => $value) {
  $intdate[] =intervalDate($value->tgl_cuti_awal,$value->tgl_cuti_akhir);
  $intdate[$arr++];
}

результат вроде:

array(2) { 
    [0]=> array(4) { 
            [0]=> string(10) "2018-11-12"
            [1]=> string(10) "2018-11-13"
            [2]=> string(10) "2018-11-14"
            [3]=> string(10) "2018-11-15" 
        } 
    [1]=> array(2) { 
            [0]=> string(10) "2018-10-31" 
            [1]=> string(10) "2018-11-01" 
        } 
}

я надеюсь быть таким:

array(5){ 
    [0]=> string(10) "2018-11-12"
    [1]=> string(10) "2018-11-13"
    [2]=> string(10) "2018-11-14"
    [3]=> string(10) "2018-11-15" 
    [4]=> string(10) "2018-10-31" 
    [5]=> string(10) "2018-11-01" 
}

Спасибо..!!

Неопределенная переменная: cek_cutay для нас

TarangP 13.02.2019 07:25

затем удалите $intdate[$arr++];

Devsi Odedra 13.02.2019 07:28

какой ответ исходит от $cek_cutay?

Roshan 13.02.2019 07:30

Вы, вероятно, могли бы использовать array_merge($intdate, intervalDate($value->tgl_cuti_awal,$value->tgl_cuti_akhir));

Nigel Ren 13.02.2019 07:41

надеюсь, это поможет вам. stackoverflow.com/questions/6785355/…

PHP Geek 13.02.2019 07:46

Я думаю, что мой любимый метод - непринятый ответ на один дубликат, который $intdate = array_merge(...$intdate);

Nigel Ren 13.02.2019 07:47
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
6
172
4

Ответы 4

Я думаю, вы ожидали объединить два массива в один массив. Если это так, то array_reduce может вам просто помочь.

$arr = [
    [
        "2018-11-12",
        "2018-11-13",
        "2018-11-14",
        "2018-11-15" ,
    ],
    [
        "2018-10-31",
        "2018-11-01",
    ]
];

$intdate = array_reduce($arr, function($old, $new) {
    return array_merge($old, $new);
}, []);

echo '<pre>', print_r($intdate), '</pre>';

Если возврат из функции intervalDate является массивом, вы можете сделать это

$intdate=array();
$arr=0;
foreach ($cek_cutay as $key => $value) {
    foreach (intervalDate($value->tgl_cuti_awal,$value->tgl_cuti_akhir) as $date) {
        $intdate[] = $date;
    }
}

Большое спасибо, ребята. эта работа для меня

Abdul Rozak 13.02.2019 08:24

Вы можете использовать эту функцию

function flatten_array( array $array, array $flattened = array() ) {
    foreach ( $array as $item ) {
        if ( is_array($item) ) {
            $flattened = flatten_array( $item, $flattened );
            continue;
        }

        $flattened[] = $item;
    }

    return $flattened;
}

$arr = array(
    array(
        "2018-11-12",
        "2018-11-13",
        "2018-11-14",
        "2018-11-15" ,
    ),
    array(
        "2018-10-31",
        "2018-11-01",
    ),
);

flatten_array($arr);
    $arr1 = array(1,2,3,4,5,11);
    $arr2 = array(6,7,8,9,10,11);
    echo'<pre>';print_r(array_merge($arr1,$arr2));
    echo'<pre>';print_r(array_unique(array_merge($arr1,$arr2)));die;

соответствующий вывод:

array_merge :
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 11
    [6] => 6
    [7] => 7
    [8] => 8
    [9] => 9
    [10] => 10
    [11] => 11
)
array_unique + array_merge :
Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 11
    [6] => 6
    [7] => 7
    [8] => 8
    [9] => 9
    [10] => 10
)

Другие вопросы по теме