Я создал многомерный массив, используя fgetcsv из файла CSV.PHP Array to XML
Использование DOMDocument и SimpleXML Я пытаюсь создать XML-файл CSV-документа.
Массив и переменные XML передаются функции в одном файле класса. XML-документ создается без каких-либо проблем, но значение не передается из массива в XML. Он работает, я использую статическое значение, противоположное передаче значения из массива, также, если я печатаю_r массив, структура и значения верны.
Я пробовал 'htmlspecialcharacters' и 'encode_UTF8' перед передачей значения в XML.
Ниже приведен пример кода, продукт представляет собой многомерный массив.
public function array_to_xml($product, &$xml)
{
foreach($product as $row)
{
$element = $xml->createElement("Product");
$xml->appendChild($element);
$element = $xml->createElement("ID", ($row[38]));
$xml->appendChild($element);
}
}
Проблема, очевидно, связана с массивом, но я не могу найти ответ. Любая помощь будет с благодарностью оценена.
Вывод в настоящее время выглядит (без значения в элементе ID). Как только он будет работать, у продукта будет около 20 дочерних элементов.
<?xml version="1.0"?>
<ProductList/>
<Product>
<ID/>
</Product>
</ProductList>
Пример $ строки при печати на экране:
Array ([0] => [1] => [2] => 6/10/2016 [3] => [4] => [5] => 7.35 [6] => N [7] => N [8] => N [9] => 0 [10] => 0 [11] => 0 [12] => 0 [13] => 0 [14] => 80 [15] => 0 [16] => 80 [17] => 0 [18] => 80 [19] => N [20] => N [21] => N [22] => N [23] => 236.50 [24] => 0.00 [25] => 4.86 [26] => AFG Home Loans - Alpha [27] => 100% Offset Lo Doc Fixed [28] => 100% Offset Lo Doc 4 Year Fixed Owner Occupied [29] => 250.00 [30] => [31] => 7.35 [32] => 0.00 [33] => 4.9 [34] => N [35] => 325.00 [36] => 48 [37] => 4.52 [38] => 1-1MX78TF [39] => N [40] => [41] => [42] => N [43] => N [44] => [45] => Y [46] => 0.00 [47] => 10,000.00 [48] => 2,000,000.00 [49] => Y [50] => 30 [51] => [52] => [53] => Y [54] => 0.00)
Что вы хотите, чтобы получившийся XML выглядел? Вы не вкладываете ничего в элемент «Продукт». – Barmar
Вам не нужно использовать 'htmlspecialchars', при необходимости библиотека будет делать кодировку. – Barmar
Вы уверены, что идентификатор должен быть отдельным элементом, а не атрибутом 'Product', например' '? –
Barmar