0

ヘッダーをキーとしてcsvファイルから配列を作成したいと思います。しかし、スクリプトをデータベースに挿入すると、csvファイルの前の行が上書きされ、最後の値のみがデータベースに保存されます。

配列のデフォルト値が5であるためだと思います。新しい値を作成するように値を変更するにはどうすればよいですか?

これはスクリプトです

<?php

// open the file.

if (($handle = fopen("test2.csv", "r")) !== FALSE) {
    // read the column headers in an array.
    $head = fgetcsv($handle, 1000, ";");


    // read the actual data.
    while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {



            // create a new array with the elements in $head as keys
            // and elements in array $data as values.
            $combined = array_combine($head,$data);

            // print.
            var_dump($combined);
    }
    // done using the file..close it,
}
?>

これが出力です

array(5){["name"] => string(5) "Harry" ["description"] => string(4) "test" ["offer_url"] => string(42) "demo.com/admin / offers / add "[" Preview_url "] => string(42)" demo.com/admin/offers/add "["expiration_date "] => string(9)" 23-8-2013 "}

array(5) { ["name"]=> string(5) "Gerry" ["description"]=> string(4) "test" ["offer_url"]=> string(42) "demo.com/admin/offers/add" ["preview_url"]=> string(42) "demo.com/admin/offers/add" ["expiration_date"]=> string(9) "23-8-2013" }

array(5) { ["name"]=> string(5) "merry" ["description"]=> string(4) "test" ["offer_url"]=> string(42) "demo.com/admin/offers/add" ["preview_url"]=> string(42) "demo.com/admin/offers/add" ["expiration_date"]=> string(9) "23-8-2013" }

4

1 に答える 1

0

you must go through multidimensional array and add additional index to the combined param like this - combined[]=...:

            // create a new array with the elements in $head as keys
            // and elements in array $data as values.
            $combined[] = array_combine($head,$data);
于 2013-02-27T14:31:55.407 に答える