Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Вебмастеру (http://forum.oszone.net/forumdisplay.php?f=22)
-   -   Нужен скрипт (работа с файлами + Mysql) (http://forum.oszone.net/showthread.php?t=238779)

koresaram 17-07-2012 15:04 1953540

Нужен скрипт (работа с файлами + Mysql)
 
Добрый день
задача состоит в следующем:
имеется множество файлов file.vars
внутри каждого файла имеется множество строк (номера строк известны):
'realname',"Василий Иванов"
'ext_3',"ЗАО "Ромашка""
и т.д.
необходимо перебрать все файлы (файлов больше 20 тысяч.) и перенести информацию из каждой строки в соответствующую ячейку таблицы MySQL. причем перенести надо не всю строку, а только значение в кавычках. то есть из строки 'realname',"Василий Иванов" в ячейку name таблицы надо внести Василий Иванов

насколько я понимаю, в написании такого скрипта для более-менее разбирающихся в php сложного ничего нет. но я как бы готов нести определенные материальные издержки в виде монеток на телефон или на яндекс-кошелек :)

mr.Morgan 31-07-2012 01:45 1961847

а файлы нельзя представить как html документы?просто первое что пришло в голову, это спарсить с хтмл страничек. сам не раз делал, сложностей особо не возникало.

Habetdin 31-07-2012 02:11 1961852

mr.Morgan, а зачем парсить html-документы?
Пусть данное будет файлом test.vars:
Цитата:

Цитата koresaram
'realname',"Василий Иванов"
'ext_3',"ЗАО "Ромашка"" »

Код:
Код:

<?php
// со страницы http://www.php.net/manual/en/function.fgetcsv.php
$row = 1;
if (($handle = fopen("test.vars", "r")) !== FALSE) {
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        $num = count($data);
        echo "<p> $num fields in line $row: <br /></p>\n";
        $row++;
        for ($c=0; $c < $num; $c++) {
            echo $data[$c] . "<br />\n";
        }
    }
    fclose($handle);
}

...выведет:
Цитата:

2 fields in line 1:
'realname'
Василий Иванов

2 fields in line 2:
'ext_3'
ЗАО Ромашка""


Время: 19:22.

Время: 19:22.
© OSzone.net 2001-