|
|
|
|
|
для: h00w
(31.01.2008 в 23:11)
| | Думаю вас бы заинтересовало | |
|
|
|
|
|
|
|
для: h00w
(01.02.2008 в 00:52)
| | Незачто. Удачи.
Я же предупредил, что не проверял. просто за синтаксисом не уследишь в блокноте без подсветки.
Думаю тут важна была идея! | |
|
|
|
|
|
|
|
для: divbyzero
(01.02.2008 в 00:35)
| | О, огромное спасибо, как я сразу не додумался так сделать, но ничего, на ошибках учатся. Еще раз спасибо ;]
P.S Видимо Вы немного торопились, когда писали этот участок кода, оттого в него вкралось пара помарок. Вот исправленная версия, если кому понадобится в будущем:
$string = \"1;bbbbbbbbbbbbbbb;111-2222222-33;131.26;+
2;bbbbbbbbbbbbbbb;111-2222222-33;133.25;+
3;bbbbbbbbbbbbbbb;111-2222222-33;133.25;+
4;bbbbbbbbbbbbbbb;111-2222222-33;133.25;+
5;bbbbbbbbbbbbbbb;111-2222222-33;133.25;+\";
//Сначала разбить все построчно:
$data = explode(chr(13), $string );// chr(13) = код переноса
//Это позволит пройтись по массиву в цикле:
foreach ($data as $value) {
$info = explode(\';\', $value); // разбиваем на части
echo \"<br>->> NUM: \".$info[0].\" GOODS: \".$info[1].\" SN: \".$info[2].\" PRICE: \".$info[3].\" PLUS: \".$info[4].\"<br>\";
}
|
| |
|
|
|
|
|
|
|
для: h00w
(31.01.2008 в 23:11)
| | Думаю стоит сделать проще:
<?
$string = "1;bbbbbbbbbbbbbbb;111-2222222-33;131.26;+
2;bbbbbbbbbbbbbbb;111-2222222-33;131.26;+";
//Сначала разбить все построчно:
$data = explode('chr(13)', $string );// chr(13) = код переноса
//Это позволит пройтись по массиву в цикле:
foreach ($data => $value) {
$info = explode(';',); // разбиваем на части
echo "<br>->> NUM: ".$info[0]." GOODS: ".$info[1]." SN: ".$info[2]." PRICE: ".$info[3]." PLUS: ".$info[4]."<br>";
}
?>
|
Не проверял, ну думаю работать должно.
Удачи. | |
|
|
|
|
|
|
| Доброго времени суток всем ;)
Решил написать парсер *.csv файлов для своего мини-магазина, но вот никак не пойму, как правильно сделать так, чтобы после разбиения массива парсер автоматом находил 4 поля (номер, название товара, серийный номер, цена), как не пробовал - все равно все перемешывается и стоит не на своих местах. Может кто помочь с этим?_)
P.S Я думаю, что неправильно юзаю функцию strtok, не в этом ли дело?
<?
include "config.php";
$string = "
1;bbbbbbbbbbbbbbb;111-2222222-33;131.26;+
2;bbbbbbbbbbbbbbb;111-2222222-33;131.26;+
3;bbbbbbbbbbbbbbb;111-2222222-33;32113.30;+
4;bbbbbbbbbbbbbbb;111-2222222-33;40500.00;+
5;bbbbbbbbbbbbbbb;111-2222222-33;44502.85;+
6;bbbbbbbbbbbbbbb;111-2222222-33;40942.63;-
7;bbbbbbbbbbbbbbb;111-2222222-33;+
8;bbbbbbbbbbbbbbb;111-2222222-33;-
9;bbbbbbbbbbbbbbb;111-2222222-33;+
10;bbbbbbbbbbbbbbb;111-2222222-33;-
11;bbbbbbbbbbbbbbb;111-2222222-33;6.50;+
12;bbbbbbbbbbbbbbb;111-2222222-33;26.89;+
13;bbbbbbbbbbbbbbb;111-2222222-33;15.34;+
14;bbbbbbbbbbbbbbb;111-2222222-33;+
15;bbbbbbbbbbbbbbb;111-2222222-33;12.77;+
";
$string = str_replace("+", "", $string);
$tok = strtok($string, "\n");
while ($tok) {
$tok = strtok(";");
$strtmp[] = $tok;
}
foreach($strtmp as $value)
{
$number = strtok($value, ";");
$name = strtok("");
$serialnumber = strtok(";");
$cost = strtok(";");
$plus_minus = strtok(";");
echo "<br>->> NUM: ".$number." GOODS: ".$goods." SN: ".$sn." PRICE: ".$price." PLUS: ".$plus."<br>";
# Далее будет запрос на вставку в БД
# ...
}
?>
|
| |
|
|
|
|