Сортировка массива, сравнивая другой массив в PHP

У меня есть 2 массива, один из которых для заказа, а другой, где нужно отсортировать реальное значение. Как я могу отсортировать массив, сравнивая массив? Любая идея будет действительно полезной. Спасибо.

Массив заказов:

Array(
[0] => Array
    (
        [code] => subscription_bundles
        [id_sequency] => 1
    )

[1] => Array
    (
        [code] => pre_order
        [id_sequency] => 2
    )

[2] => Array
    (
        [code] => voucher
        [id_sequency] => 3
    )

[3] => Array
    (
        [code] => ppv
        [id_sequency] => 4
    )

[4] => Array
    (
        [code] => ppv_bundle
        [id_sequency] => 5
    )
)

И для сортировки массива:

Array(
[monetization] => Array
    (
        [ppv] => Pay Per View
        [ppv_bundle] => Pay-Per-View Bundle
        [subscription_bundles] => Subscription
        [voucher] => Voucher
    )

Вы пропустили pre_order?

nice_dev 04.09.2018 12:37

@ vivek_23 Я не пропустил это. Данные в sort_array динамические

Piyush Kumar Sahay 04.09.2018 12:45

@SougataBose first_array (code) = second_array ['монетизация] [ключ]

Piyush Kumar Sahay 04.09.2018 12:49

@SougataBose - этот вопрос не является дубликатом вашего связанного вопроса ..

Philipp 04.09.2018 13:48

Не полностью, но логика будет почти такой же. Хоть вопрос снова открыл. Спасибо.

Sougata Bose 04.09.2018 14:10
Стоит ли изучать 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 и хотите разрабатывать...
1
5
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вы можете использовать uksort в сочетании с array_combine для создания сопоставления порядка ключей из массива заказов.

// create order mapping
$map = array_combine(
    array_column($order, 'code'),
    array_column($order, 'id_sequency')
);

// sort the data
uksort($data, function ($a, $b) use ($map) {
    return $map[$a] - $map[$b];
});

Я не понял, что ты сделал, и это не работает. И FYI first_array (code) = second_array ['монетизация] [ключ]

Piyush Kumar Sahay 04.09.2018 12:48

давай - проявим немного усилий .. замените $data на $second_array['monetization']

Philipp 04.09.2018 13:30

очевидно, я сделал это. Тем не менее я не получил

Piyush Kumar Sahay 04.09.2018 13:40

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