>  기사  >  백엔드 개발  >  PHP에서 파일의 마지막 줄을 삭제하는 방법

PHP에서 파일의 마지막 줄을 삭제하는 방법

王林
王林원래의
2020-08-04 14:21:273499검색

PHP에서 파일의 마지막 줄을 삭제하는 방법: 먼저 fopen() 함수를 사용하여 파일을 연 다음 fgets() 함수를 사용하여 파일을 한 줄씩 읽고 마지막으로 읽은 내용을 배열에 넣습니다. 배열을 삭제하려면 array_pops() 함수를 사용하십시오. 마지막 요소이면 충분합니다.

PHP에서 파일의 마지막 줄을 삭제하는 방법

array_pop() 함수는 배열의 마지막 요소를 삭제합니다. 배열의 마지막 값을 반환합니다. 배열이 비어 있거나 배열이 아닌 경우 NULL이 반환됩니다.

(추천 튜토리얼: php 그래픽 튜토리얼)

구문:

array_pop(array)

fgets() 함수는 열린 파일에서 한 줄을 반환합니다.

fgets() 함수는 지정된 길이(길이 - 1)에 도달하거나, 개행 문자를 만나거나, 파일 끝(EOF)에 도달하면(둘 중 먼저 오는 경우) 새 줄 반환을 중지합니다. 이 함수는 실패 시 FALSE를 반환합니다.

문법:

fgets(file,length)

(비디오 튜토리얼 추천: 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.