如何从php中由多个delimter分隔的文本文件中获取内容

如何从php中由多个delimter分隔的文本文件中获取内容,php,Php,我有这个文本文件,我想上传到我的数据库(oracle), 文件如下所示: D000000000000000xxxxxxxxxx**20180419**0000000000xxxxSome body's Name here xxxxxxxxxxxx 标记为“x”的区域是我想要获得的值。到目前为止,我已经: $destination_file = "test.txt"; $file = file($

我有这个文本文件,我想上传到我的数据库(oracle), 文件如下所示:

D000000000000000xxxxxxxxxx**20180419**0000000000xxxxSome body's Name here                                         xxxxxxxxxxxx
标记为“x”的区域是我想要获得的值。到目前为止,我已经:

$destination_file = "test.txt";
$file = file($destination_file, FILE_USE_INCLUDE_PATH);
unset($file[0]);
$D='D000000000000000000';
$N='201804050000000000';
$A='ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$parts=array();
foreach ($file as $files) {
    $parts = preg_replace('/('.$D.'|'.$N.')|[\s|'.$A.'|[()]/',',',$files);
    echo var_dump($parts);
{
这给了我这个输出:

该组:37:string,8325595991426,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,(长度=222)

该组:37:字符串,8421232353900,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,(长度=222)

该组:37:该组:37:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:该组:37:于于于于于于于于于,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,(长度=257)


如果我想将这些值存储在数组中,方向是否正确?或者还有其他有效的方法吗?

星号(**)是什么?分隔符?d00000000000000xxxxxxxxx和0000000000 xxxxx始终具有相同的长度?查看提供该输出的输入以及显示的代码将有助于更清楚地了解您的需求。然而,我认为你可能应该使用,使用一种模式来捕获你想要的,而不是试图替换你不想要的。嗨,对不起,“x”应该代表任何数字,星号(**)是我试图用粗体显示日期“20180419”。有时,第一行数字的长度可能会有所不同,从7个数字到9个,然后是日期,然后是14个数字,然后是字母字符,最后是12个数字。我需要这些数字才能将它们插入我的数据库。。