У меня есть массив как это:PHP Создание двухмерных массивов, зависящих от функции
[apple] => 11
[pear] => 5
[banana] => 3
[cucumber] => 2
[tomatoes] => 8
Я хотел бы создать многомерный массив так:
[randomArrayName1]
[apple] => 11
[banana] => 3
[tomatoes] => 8
[randomArrayName2]
[pears] => 5
[cucumber] => 2
я написал ниже, но он не работает, и я понятия не имею, как сделать это сделать: то, что мне нужно это сделать
$quantity = array();
foreach($fruit as $key => $value) {
$quantity = Finder($key);
}
randomArrayName1
и randomArrayName2
будет генерироваться в зависимости от результата функции Finder()
. В зависимости от этого результата я хочу, чтобы массив фруктов был создан как второй размерный массив.
Решение: Проблема заключалась в том, что функция, которую я написал, что созданные имена, как randomArrayName1, randomArrayName2 ... в действительности функция XML. Поэтому результатом этой функции не был массив, это был простой объект XML. Это вызвало проблему при создании многомерного массива. После того, как я выполнил приведенный ниже код, он преобразовал SimpleXML в Array, и код работал нормально. $ типа SimpleXML массив $ аута результат массив
foreach ((array) $type as $index => $node)
$out[$index] = (is_object ($node)) ? xml2array ($node) : $node;
Отличный код, это идея, которую я использую для его кодирования, но я получаю эту ошибку. PHP Warning: file_get_contents (.blabla.com/xml/word1 word2 word3 word4. И это потому, что Finder ($ key) получает несколько значений во всех один раз. Мне нужно обеспечить, чтобы он получал только один раз за раз и структурировал массив соответственно. PS Извините, я ответил неправильно. –