1
내 텍스트 파일에는 다음이 포함플랫 파일의 특정 줄을 덮어 쓰는 방법은 무엇입니까?
a
b
c
d
e
난 내가 입력 상자의 데이터에 입력 무엇 이건 라인 3 만 (즉 교체 "C")를 덮어 쓸 수 있도록 내 코드를 수정하는 방법을 알아낼 수 없습니다 '. 아래 코드는 텍스트 만 상자 경우에 3 행을 읽어 즉, I, 그것은 주변의 다른 방법으로 작업이
$data = $_POST['data'];
$file = "data.txt";
$fp = fopen($file, "w") or die("Couldn't open $file for writing");
fwrite($fp, $data) or die("Couldn't write values to file");
fclose($fp);
다음과 같이 내 코드는 현재 입력 상자 '데이터'의 내용은 완전히 내 파일을 대체한다 페이지가 처음로드됩니다.
$file = "data.txt";
$lines = file($file);
echo stripslashes($lines[2]);
누구든지이 작업을 수행하는 데 필요한 코드를 조언 할 수 있습니까?
빠른 손가락을 사용 Btw는
, 독서 코드는 "ONLY"3 행을 읽지 않습니다 : P – Chris
"* 유일한 길 *"는 "* 파일에서 위치를 저장하거나 기억하지 않기 때문에 *"; 'fseek() '를 사용하면 파일의 위치로 건너 뛰고 그 위치에서 덮어 쓰기 및/또는 추가 할 수 있습니다 (전체 파일을 읽을 필요가 없음). – newfurniturey
대체 행이 텍스트 데이터의 경우 거의없는 기존 행의 정확한 길이 인 경우에만 찾기를 사용할 수 있습니다. 그러나 확실한 것은, 길이가 고정 된 레코드를 가지고 있다면, 추구하는 것이 합리적입니다.하지만 데이터베이스를 다시 작성하는 것입니다. –