У меня есть файл Excel / CSV с относительно простым форматом.
1|2|3|4|10|20|30
| | | |40|50|60
| | | |70|80|90
9|8|7|6|01|02|03
| | | |04|05|06
| | | |07|08|09
| | | |10|11|12
Полные строки из 7 полей представляют собой отдельные элементы, а повторяющиеся столбцы 5, 6 и 7 представляют данные, которые я хочу сериализовать. С каждой основной строкой может быть связано любое количество частичных строк.
Таким образом, для вышеприведенного пункта 1 данные для сериализации:
| | | |10|20|30
| | | |40|50|60
| | | |70|80|90
То же самое для элемента 2, хотя содержимое ячейки полностью произвольно, за исключением количества элементов.
Выходные данные будут ниже для получения сериализованных данных, за исключением того, что вместо печати на страницу нужно возвращаться в CSV, как столбец 8, с удалением дополнительных строк (в данном случае 2-3, 5-6) .
Если бы я смог достичь нижеуказанного, то было бы здорово:
<?
$line_1 = array(
array('1' => '10', '20', '30'),
array('1' => '40', '50', '60'),
array('1' => '70', '80', '90'),
);
$line_2 = array(
array('1' => '01', '02', '03'),
array('1' => '04', '05', '06'),
array('1' => '07', '08', '09'),
array('1' => '10', '11', '12'),
);
echo serialize($line_1);
echo serialize($line_2);
?>
Итак, наконец:
1|2|3|4|10|20|30|serialize($line_1)
9|8|7|6|01|02|03|serialize($line_2)
Тогда это был бы просто случай записи в родительскую строку.
Вывод первой строки будет следующим и записан в столбец H:
1|2|3|4|10|20|30|a:3:{i:0;a:3:{i:1;s:2:"10";i:2;s:2:"20";i:3;s:2:"30";}i:1;a:3:{i:1;s:2:"40";i:2;s:2:"50";i:3;s:2:"60";}i:2;a:3:{i:1;s:2:"70";i:2;s:2:"80";i:3;s:2:"90";}}
Возможно ли это сделать в Excel без вмешательства PHP, и если нет, то как это можно сделать в PHP?