I mają następujące w pliku o nazwie test_tab.txt
(karta rozdzielone)PHP - eksplodować wartości w tablicy, wyjście na karcie oddzielone plik
header1 header2 header3
field1 field1a field1b; field1c
field2 field2a field2b
field3 field3a
field4 field4a field4b; field4c; field4d; field4e
field5 field5a
field6 field6a field6b; field6c
ja do konwersji, że do następnego (także zakładki oddzielona napisany do innego pliku tekstowego):
header1 header2 header3
field1 field1a field1b
field1 field1a field1c
field2 field2a field2b
field3 field3a
field4 field4a field4b
field4 field4a field4c
field4 field4a field4d
field4 field4a field4e
field5 field5a
field6 field6a field6c
field6 field6a field6c
Jestem nowym do programowania w ogóle, ale ja googled wokół i myślę, że możliwym sposobem osiągnięcia tego byłoby utworzyć tablicę i jakoś eksplodować header3 para klucz-wartość. Nie jestem pewien, jak kopiować pola pod nagłówkiem1 i nagłówkiem2.
Wszystko mam w tej chwili jest jakiś kod, aby utworzyć tablicę:
$mainarray = array();
foreach (file('test_tab.txt') as $row) {
list($header1, $header2, $header3) = explode("\t", $row);
$mainarray[] = array(header1 => $header1, header2 => $header2, header3 => $header3);
}
print_r($mainarray);
co daje:
Array
(
[0] => Array
(
[header1] => header1
[header2] => header2
[header3] => header3
)
[1] => Array
(
[header1] => field1
[header2] => field1a
[header3] => field1b; field1c
)
[2] => Array
(
[header1] => field2
[header2] => field2a
[header3] => field2b
)
[3] => Array
(
[header1] => field3
[header2] => field3a
[header3] =>
)
[4] => Array
(
[header1] => field4
[header2] => field4a
[header3] => field4b; field4c; field4d; field4e
)
[5] => Array
(
[header1] => field5
[header2] => field5a
[header3] =>
)
[6] => Array
(
[header1] => field6
[header2] => field6a
[header3] => field6b; field6c
)
)
Wszelkie pomysły, w jaki sposób podejść do tego? Używam wersji PHP 5.3.10.
Użyj wbudowanych funkcji PHP [fgetcsv()] (http://www.php.net/manual/en/function.fgetcsv.php) i [fputcsv()] (http: //www.php .net/manual/en/function.fputcsv.php) do pracy z plikami o wartościach rozdzielonych; lub nawet [SPLFileObject] (http://www.php.net/manual/en/class.splfileobject.php) –