2011-12-31 2 views
0

여러 줄의 파일이 있습니다.PHP - 파일의 일반적인 문자열을 기반으로 파일 데이터를 배열로 변환합니다.

<? 
print_r(explode(':', $line)); 
?> 

을 나는 수험 어떻게 : 나는 모든 데이터 (33 개) 라인 데이터가 배열로 그룹화 한 후 내가 지금처럼 하위 배열에 데이터를 한계를 정하다 콜론 싶습니다 배열로 그룹화 할 수 싶습니다 파일의 모든 33 행의 데이터가 위의 스 니펫에서 $ $ 변수가 될 준비가 되셨습니까?

답변

2

을하지만, array_chunk를보십시오.

[0] => 
     [0] => "Line 1", 
     [1] => "Line 2", 
     [2] => "Line 3", 
     [3] => "Line 4", 
[1] => 
     [0] => "Line 5", 
     [1] => "Line 6", 
     [2] => "Line 7", 
     [3] => "Line 8", 

:

$line_array = file($location_of_data_file); 

$line_array_by_33 = array_chunk($line_array, 33); 

이 당신과 같은 배열을 제공 줘야 : 시나리오의 경우, 데이터는 (그렇지 않으면, 당신은 배열로 라인을 분할 폭발 할 수 있습니다) 파일에서 오는 가정하면 위의 내용은 짧은 버전이지만 아이디어를 얻을 수 있습니다.

구분 기호를 추가해야하는 경우 각 청크를 붕괴하고 토큰을 추가 한 다음 다시 분해 할 수 있습니다.

+0

감사합니다. 지연 돼서 죄송합니다! – maskeda

0

IBM article을 바탕으로, 같은 시도 :이 목표를 맞는 것입니다 확실하지 않다

$counter = 1; 
$group_of_lines = ''; 
$file_handle = fopen("myfile", "r"); 

while (!feof($file_handle)) { 
    $line = fgets($file_handle); 
    $group_of_lines .= $line; 

    if($counter % 33 == 0) { 
     // do stuff with your $group_of_lines 
    } 

    $counter++; 
} 
fclose($file_handle); 
+0

앞으로 도움이 될 것입니다. – maskeda

관련 문제