2013-08-14 3 views
1

데이터를 텍스트 파일에 저장하여 캘린더를 만들었습니다. 지금은 한 번에 한 줄만 편집 할 수 있지만 여러 날을 편집하고 싶습니다 (예 : 15 일에서 9 월 19 일까지 같은 내용). 이 작업을 수행하는 방법?php - 행 X에서 행 X까지 편집 편집

데이터가 포함 된 텍스트 파일은 ($ id가 1에서 31로가는) 내 텍스트 파일은 내가 편집 한 콘텐츠입니다.

 $id|$exp|$color|$color2 

그리고 편집을 허용하는 PHP 파일은 다음과 같습니다

 $month_file = $file . ".txt"; 
     $month_db = file("$month_file"); 
     $call = fopen("$month_file","w"); 

     foreach($month_db as $month_line) { 
      $month_line_arr = explode("|",$month_line); 
      $month_line_id = $month_line_arr[0]; 
     if($month_line_id == $id) { 
     fwrite($call,"$month_line_arr[0]|$exp|$color|$color2\n"); 
     }else { 
     fwrite($call,"$month_line"); 
     } 
     } 


     fclose($call); 

답변

1

변경

if($month_line_id == $id) { 

에 :

if ($month_line_id >= $min_id && $month_line_id <= $max_id) { 

$min_id$max_id 15 포함 귀하의 예에서는 19 점입니다.

BTW에서는 fgetcsv()을 사용하여 한 줄로 한 줄을 읽은 다음 한 줄로 나누고 다시 fputcsv() 줄을 쓰면됩니다.

+0

대단히 고맙습니다. 지금은 잘 작동합니다! fgetcsv() 함수에 대해 알지 못 했으므로 살펴 보겠습니다.) – Junhee