从 table 中提取内容并存储到 php 中的另一个 table

Extract content from table and store in to another table in php

下图是table的内容。同一个table里面有几个内容。

我需要从内容中提取数据以保存到另一个 table。因为我不需要完整的内容。

我会从内容上说明我需要哪一部分。请检查图像。

  1. 第 3 行我需要 "Amtsgericht Stuttgart Aktenzeichen: HRB 720539"

  2. 在第 4 行我需要“26.10.2006 18:08”

  3. 在第 6 行,我需要这里写的任何内容。

  4. 在第 7 行我需要日期“18.10.2006”

  5. 第8行我需要公司名称"Verlag Chrislicher Digest GmbH"

来自数据库的内容

Amtsgericht Ulm Aktenzeichen: HRB 720768 
Bekannt gemacht am: 13.03.2007 13:56 Uhr
Die in () gesetzten Angaben der Geschäftsanschrift und des Unternehmensgegenstandes erfolgen ohne Gewähr.
Neueintragungen
09.03.2007
Märklin Spielwaren Vertriebs-GmbH, Göppingen (Stuttgarter Str. 55, 73033 Göppingen). Gesellschaft mit beschränkter Haftung. Gesellschaftsvertrag vom 28.12.2006. Gegenstand: Handel mit Spielwaren aller Art. Stammkapital: 25.000,00 EUR. Allgemeine Vertretungsregelung: Ist nur ein Geschäftsführer bestellt, vertritt er allein. Sind mehrere Geschäftsführer bestellt, vertreten zwei gemeinsam oder ein Geschäftsführer mit einem Prokuristen. Geschäftsführer: Dr. Kantowsky, Jan, Grünwald, *25.03.1968; Menrad, Karlheinz, Donzdorf-Reichenbach, *28.04.1944, jeweils einzelvertretungsberechtigt mit der Befugnis, im Namen der Gesellschaft mit sich im eigenen Namen oder als Vertreter eines Dritten Rechtsgeschäfte abzuschließen.

你不会找到任何人为你做这项工作。您需要 post 一些您目前拥有的代码以及您卡在什么地方。作为提示,我建议只使用正则表达式来获取您想要的信息。

因此,如果所有数据都存储在字符串 $data 中,您可以这样做:

$data = explode("/n", $string);
$firstline = $data[0];

哪个会得到文本的第一行。然后你需要做类似的事情才能得到其余的。

我使用这段代码得到了结果。

<?php
require_once('dbconnect.php');
$query_select                  = "SELECT id, content FROM newregister_copy";
$query_execute                 = $mysqli->query($query_select);
while($query_execute_array = $query_execute->fetch_array()) {
    $contentId                 = $query_execute_array['id'];
    $content                   = $query_execute_array['content'];
    $data                      = explode("\n", $content); //better regex for line
    //echo '<pre>';
    $filter                    = array_filter($data); // 9

    /*$count                   = count($filter);*/ //6

    /* Line Three */
    $firstElement              = current($filter); // Amtsgericht Mannheim Aktenzeichen: HRB 709650
    $explode_firstElement      = explode(':', $firstElement);
    $line_three                = $explode_firstElement[1]; //HRB 709650
    $explode_firstElementsZero = explode(' ', $explode_firstElement[0]);
    $line_three_one            = $explode_firstElementsZero[0]; //Amtsgericht
    $line_three_two            = $explode_firstElementsZero[2]; //Aktenzeichen

    /* Line Four */
    $pattern                   = '/(\d+)|AM|PM/';
    $secondElement             = next($filter); // Bekannt gemacht am: 09.07.2010 12:00 Uhr
    if(preg_match_all($pattern,$secondElement,$match))
    {
        $line_four             = $match[0][0].'-'.$match[0][1].'-'.$match[0][2].' '.$match[0][3].':'. $match[0][4]; //09-07-2010 12:00
    }

    /* Line Six */
    $lineFive                  = next($filter); // Leaved line five
    $thirdElement              = next($filter); // Neueintragungen
    $line_six                  = $thirdElement;

    /* Line Seven */
    $fourthElement             = next($filter); // 02.07.2010
    $line_seven                = str_replace('.', '-', $fourthElement);

    /* Line Eight */
    $fourthElement             = next($filter); // Detools UG (haftungsbeschränkt) etc
    $explode_fourthElement     = explode(',', $fourthElement);
    $line_eight                = $explode_fourthElement[0];

    $query_insert    = "INSERT INTO company(contentId,linethree,linethreeone,linethreetwo,linefour,linesix,lineseven,lineeight) VALUE ('".$contentId."', '".$line_three."', '".$line_three_one."', '".$line_three_two."', '".$line_four."', '".$line_six."', '".$line_seven."', '".$line_eight."')";
    $insert_execute  = $mysqli->query($query_insert);
}