0

我需要解析这个没有分隔的 .txt 数据库,它是按位置。每个字段都有一个开始位置、结束位置和长度。

我将把它插入到 MySQL 表中,但我必须创建布局并处理如何将这些数据定义为数组或对象?

这是记录布局的链接:http: //www.state.nj.us/treasury/taxation/lpt/MODIV-Counties/2013/MODIVLayout.pdf

4

1 回答 1

1

记录将是一个字符串,长度为 700 个字符。您将拥有这些字符串的数组。每个字符串,你应该转换成一个对象或散列。

$record_strings = array(
    'DATADATADATADATA...DATADATADATADATADATADATA',
    'DATADATADATADATA...DATADATADATADATADATADATA',
    'DATADATADATADATA...DATADATADATADATADATADATA',
    'DATADATADATADATA...DATADATADATADATADATADATA',
    'DATADATADATADATA...DATADATADATADATADATADATA',
    'DATADATADATADATA...DATADATADATADATADATADATA',
);
$record_hashes = array_map(function($record_string) {
    return array(
        'COUNTY-DISTRICT' => substr($record_string, 0, 4),
        'BLOCK' => substr($record_string, 4, 9),
        'LOT' => substr($record_string, 13, 9),
        ...
    );
}, $record_strings);

您现在拥有了一个哈希数组,您可以更轻松地使用这些哈希进行操作,例如迭代并插入到数据库中。

于 2013-06-25T21:28:08.390 回答