PHP에서 파일의 마지막 줄을 삭제하는 방법: 먼저 fopen() 함수를 사용하여 파일을 연 다음 fgets() 함수를 사용하여 열린 파일에서 내용 한 줄을 읽고 배열에 저장합니다. 마지막으로 array_pop()을 사용하십시오. 이 함수는 배열의 마지막 요소를 삭제합니다.
관련 함수:
(추천 튜토리얼: php 그래픽 튜토리얼)
fopen() 함수는 파일이나 URL을 엽니다.
fopen()이 실패하면 오류 메시지와 함께 FALSE를 반환합니다. 함수 이름 앞에 '@'을 추가하면 오류 출력을 숨길 수 있습니다.
fgets() 함수는 열린 파일에서 한 줄을 반환합니다.
fgets() 함수는 지정된 길이(길이 - 1)에 도달하거나, 개행 문자를 만나거나, 파일 끝(EOF)에 도달하면(둘 중 먼저 오는 경우) 새 줄 반환을 중지합니다. 이 함수는 실패 시 FALSE를 반환합니다.
array_pop() 함수는 배열의 마지막 요소를 삭제합니다. 배열의 마지막 값을 반환합니다. 배열이 비어 있거나 배열이 아닌 경우 NULL이 반환됩니다.
(학습 동영상 추천: php 동영상 튜토리얼)
코드 구현:
/** * 删除文件最后一行 * @param $file_path 文件路径 */ public function delLastLine($file_path) { $file = $fp = fopen($file_path, 'r') or die("Unable to open file!"); while(!feof($file)) { $fp = fgets($file); if($fp) { $content[] = $fp; } } array_pop($content); fclose($file); //重新写入文件 $file = fopen($file_path, 'w+'); fwrite($file, implode("", $content)); fclose($file); }
설명:
내 파일을 읽은 후 배열의 마지막 줄에 false가 저장되므로 if($fp)는 내부에 쓰여진 배열. 파일에 빈 줄이 있으면 이 판단을 제거하고 배열의 마지막 줄을 두 번 삭제하십시오. 파일이 너무 커서 메모리에 맞지 않는 경우에는 이 방법이 작동하지 않습니다.
위 내용은 PHP에서 파일의 마지막 줄을 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!