SQL 테이블에 삽입해야하는 txt 파일의 행을 포함하는 배열이 있지만 24 개의 열 중 4 개 (모든 값/t 간격)은 날짜이지만 시간 등으로 끝나야하므로 모두 15 자로 단축해야하므로 substr. 전체 배열을 분해하고 일부 열의 모든 값을 변경 한 다음 이전 배열로 다시 채우기
그래서 나는 그들을 다음 파일의 값을 변경할 삽입하는 다양한 방법을 시도했다, 그러나 하나 그냥 내 현재 코드처럼 작동하지 않습니다$lines = file('F:/xamptest/htdocs/UniProject/upload/Amazon output.txt');
foreach($arr as $line)
{
$arr1 = explode("\t", $line);
$arr1[2] = substr($arr1[2], 0, -15);
$arr1[3] = substr($arr1[3], 0, -15);
$arr1[4] = substr($arr1[4], 0, -15);
$arr1[5] = substr($arr1[5], 0, -15);
$arri = implode("\t",$arr1);
file_put_contents('upload/ImportLine.txt', $arri);
mysql_query ("LOAD DATA INFILE 'F:/xamptest/htdocs/UniProject/upload/Amazon output.txt' INTO TABLE imported_orders FIELDS TERMINATED BY '\t'", $conn);
}
이의 날짜를 변경해야 행을 txt 파일에 저장 한 다음 테이블에 삽입하고 각 행에 대해 라운드를 반복하십시오. 그러나이 모든 것은 파일의 마지막 줄을 삽입하기 때문에 루프를 거치지 만 덮어 쓰게됩니다. 또는 내 메서드는 너무 오래 바람이 피고 열 및 값 모두 24 나열 테이블 및 대규모 SQL 삽입 필요가 포함됩니다. 나는이 방법으로 날짜의 파일 라인과 질량 SUBSTR을 포함하는 전체 배열을 폭발 할 수 있다면
내 포인트
그래서 궁금 해서요, 다음 이전 배열 라인 형식 넣어 다시 복원하는 다시 파일에 넣고 LOAD DATA INFILE을 사용하십시오. 원본 파일로드는 작동하지만 날짜는 '2013-03-11T20 : 35 : 33 + 00 : 00'이므로 날짜 유형으로 사용할 수 없습니다.
또한 값을 심의하는 변수를 단순히 변수로 삽입하고 배열을 만들지 않고 eachColumn = andValue [2]가 더 좋을 때 변수를 삽입하는 방법이있는 경우에도 마찬가지입니다.
감사합니다.