объединить 2 отдельных массива соответствующих ключей

1

Мне нужно взять значения в первом массиве вверху и вставить их в нижний массив и назначить key качестве url при их объединении. Как я могу это сделать?

Я попробовал array_merge_recursive(), но это, похоже, не делало этого.

До

$batchedDomains = Array
(
    [0] => http://www.domain.com/1/
    [1] => http://www.domain.com/2/
)

$json_a = Array
(
    [0] => stdClass Object
        (
            [pda] => 91.1624138732
            [upa] => 1
        )

    [1] => stdClass Object
        (
            [pda] => 91.1624138732
            [upa] => 1
        )

)

После

Array
(
    [0] => stdClass Object
        (
            [pda] => 91.1624138732
            [upa] => 1
            [url] => http://www.domain.com/1/
        )

    [1] => stdClass Object
        (
            [pda] => 91.1624138732
            [upa] => 1
            [url] => http://www.domain.com/2/
        )

)
  • 1
    Вы что-нибудь пробовали? Есть несколько способов сделать это!
  • 1
    Вы должны попытаться опубликовать свой код как можно больше информации. Есть несколько способов сделать это, и это довольно просто.
Показать ещё 4 комментария
Теги:
object
arrays

1 ответ

3
Лучший ответ

Это должно сработать для вас:

Просто array_map() оба массива с помощью array_map() и добавьте url адрес stdClass object $v1 со значением $v2.

<?php

    $json_a = array_map(function($v1, $v2) {
        $v1->url = $v2;
        return $v1;
    }, $json_a, $batchedDomains);

    print_r($json_a);

?>

вывод:

Array
(
    [0] => stdClass Object
        (
            [pda] => 91.1624138732
            [upa] => 1
            [url] => http://www.domain.com/1/
        )

    [1] => stdClass Object
        (
            [pda] => 91.1624138732
            [upa] => 1
            [url] => http://www.domain.com/2/
        )

)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню