0

我从 url 的实时接口调用中获得了这些数据:

"DATETIME";"ACTION";"ACTIONTEXT";"POSITION";"AREA";"DRIVERKEY";"DRIVERNAME";"CAR";"LAT";"LON"; 
"21.05.2013 10:59:00";"G";"Arbeitsende";"";"20037100 ARCUS Cottbus";"0000161395E7";"Süsse, Daniel";"Neubuchung";"0";"0"; 
"21.05.2013 19:07:00";"G";"Arbeitsende";"";"20037100 ARCUS Cottbus";"0000161395E7";"Süsse, Daniel";"Neubuchung";"0";"0"; 
"27.05.2013 05:38:05";"K";"Arbeitsbeginn";"D-02625 Bautzen Hanns-Eisler-Straße 10";"";"0000161395E7";"Süsse, Daniel";"BZ-DK 101";"51.17421";"14.45179"; 
"27.05.2013 06:04:25";"K";"Arbeitsbeginn";"D-02733 Cunewalde Gewerbegebiet Roßkaupe 11";"";"00001613B355";"Wypior, Andreas";"BZ-DK 11";"51.09184";"14.53524"; 
"27.05.2013 06:20:26";"K";"Arbeitsbeginn";"D-02733 Cunewalde Gewerbegebiet Roßkaupe 11";"";"000016127326";"Henze, Jens";"BZ-DK 55";"51.09194";"14.53433"; 
"27.05.2013 06:52:33";"K";"Arbeitsbeginn";"D-97792 Riedenberg";"";"000016139436";"Rother, Thomas";"BZ-DK 260";"50.3171";"9.845136";

我尝试了不同的函数来直接从通过 PHP 导入(结构化)到 MySQL 数据库的 url 调用中获取这些数据,但我总是最终将整个数据放在一个字段中,而不是像下面这样分开:

DATETIME: 21.05.2013 10:59:00 
ACTION: G
ACTIONTEXT: Arbeitsende
...etc

希望你能帮助/教我解决这个问题。

用于将 csv 数据(正文元素中的文本)保存在临时 csv 中的 PHP 部分:

$fp = fopen('$url', 'w');

$delimiter = ';';
$headers = array('DATETIME', 'ACTION', 'ACTIONTEXT', 'POSITION');
fputcsv($fp, $headers, $delimiter);

foreach ($worker as $worker) {
    $fields = array($worker->...);
    fputcsv($fp, $fields, $delimiter);
}

fclose($fp);

我真的不知道如何直接从站点获取此文本(csv 格式)以将其正确导入 MySQL 数据库。

4

1 回答 1

0
foreach ($worker as $worker)

这看起来很丑陋,并且在循环范围内使用同名的局部变量从全局范围“遮蔽”了 $worker 数组。在循环中(更糟糕的是:即使在循环之后),原始 $worker 数组已被其中一个元素替换。

它可能只是一个错字,但如果它来自真实代码,请考虑选择唯一的变量名。

于 2013-06-03T21:54:53.050 回答