저는 PHP에서 최고가 아니며 누군가 도와 주면 매우 감사하게 생각합니다. 기본적으로 나는 데이터 피드의 각 라인을 파싱하고 각각의 "|" - 그런 다음 데이터베이스에 추가 할 수 있습니다. 나는 explode를 사용하여 "|"사이에서 정보를 얻는 것을 처리 할 수 있다고 생각하지만, 텍스트 파일의 각 라인을 단수로 파싱 할 때 약간의 도움이 필요합니다. 실제로 더 단순하게하기 위해서, 나는 변수의 각 라인을 사용하기 만하면된다. 텍스트 영역과 폼을 사용하여 변수에 내용을 제출할 것이다. 어떤 도움이라도 대단히 감사하겠습니다!데이터 피드 파싱
3
A
답변
4
당신은 라인의 배열로 파일을 읽고 모든 분할을 수행 할 수 있습니다 : 당신이 말한대로
$lines = file("filename");
foreach($lines as $line) {
$parts = explode("|", $line);
// do the database inserts here
}
이미 예 : file_get_contents 같은과 (변수의 모든 텍스트가있는 경우()), 당신은 \ n 먼저 폭발 할 수 있고 위와 같은 foreach 문을 수행합니다.
0
2
사용하여 루프에서 파일을 읽어 실패, 당신은이 개행 문자를 사용하여 기능을 폭발 사용할 수 있습니다 변수에서 배열의 새 요소로, 그러면 배열 요소에 대해 explode를 수행 할 수 있습니다. 즉
$sometext = "balh | balh blah| more blah \n extra balh |some blah |this blah";
$lines = explode("\n", $sometext);
foreach($lines as $oneLine)
{
$lineElements[] = explode("|", $oneLine);
}
는 당신은 당신 elems의 2 차원 배열을 가지고있다.
당신이 파일에서 읽고 있다면, 당신은 단순히 여기에 설명 된 파일 기능을 사용할 수 있습니다 :
http://us2.php.net/manual/en/function.file.php
배열의 요소로 파일의 각 라인을 얻을 수 있습니다.
+0
@ zuk1 : 파일을 실제로 읽지 않는 경우에 작동합니다. –
0
당신은 둘 다 얻을 폭발 사용할 수 있습니다
는$myFile = "File.txt";
$fh = fopen($myFile, 'r');
$data = fread($fh);
fclose($fh);
$newLines = explode("\n",$data);
foreach($newLines as $s)
{
$parsed = explode("|",$s);
foreach($parsed as $item)
{
// do your db load here
}
}
1
@ zuk1 : 실제 파일을 읽을 때 작동합니다. –