У меня есть результат запроса для страниц следующим образом:
Array
(
[0] => Array
(
[lang] => en
[id_page] => 113
[url] => pageurl_in_english
[title] => Page Name in English
)
[1] => Array
(
[lang] => fr
[id_page] => 113
[url] => pageurl_in_french
[title] => Page Name in French
)
)
Я написал функцию для возврата этого массива в исходное состояние при отправке формы.
Исходное состояние:
Array
(
[0] => Array
(
[url] => Array
(
[fr] => pageurl_in_french
[en] => pageurl_in_english
)
[title] => Array
(
[fr] => Page Name in French
[en] => Page Name in English
)
)
)
Функция, которая должна вернуть его обратно;
* * 1010
Массив языков идет в порядке с fr, en (в зависимости от желаемого порядка lang в таблице lang), но массив страниц имеет порядок en, fr. Функция возвращает его обратно в текущее состояние, но записывает все в английские значения. Я делаю ошибку здесь, но был слеп, поэтому не вижу ее. Спасибо за любую помощь.
Если функция написана неправильно, всегда приветствуются новые советы.
Я отредактировал функцию до последней рабочей копии. Результат:
Array
(
[0] => Array
(
[lang] => Array
(
[fr] => en
[en] => en
)
[url] => Array
(
[fr] => pageurl_in_english
[en] => pageurl_in_english
)
[title] => Array
(
[fr] => Page name in English
[en] => Page name in English
)
)
)
Массивы, предоставляемые в функции:
$data
- первый массив в этом вопросе, результат из db.
$fields
:
$fields = array(
'lang',
'url',
'title'
);
$languages
Array
(
[0] => fr
[1] => en
)