Maison  >  Article  >  développement back-end  >  Comment supprimer la dernière ligne d'un fichier en php

Comment supprimer la dernière ligne d'un fichier en php

王林
王林original
2020-08-12 13:44:302504parcourir

Comment supprimer la dernière ligne d'un fichier en PHP : utilisez d'abord la fonction fopen() pour ouvrir un fichier ; puis utilisez la fonction fgets() pour lire une ligne de contenu du fichier ouvert et l'enregistrer. dans un tableau ; enfin, utilisez simplement la fonction array_pop() pour supprimer le dernier élément du tableau.

Comment supprimer la dernière ligne d'un fichier en php

Fonctions associées :

(Tutoriel recommandé : Tutoriel graphique php)

fopen( ) La fonction ouvre un fichier ou une URL.

Si fopen() échoue, il retournera FALSE avec un message d'erreur. Vous pouvez masquer la sortie d'erreur en ajoutant un « @ » devant le nom de la fonction.

La fonction fgets() renvoie une ligne d'un fichier ouvert.

La fonction fgets() cessera de renvoyer une nouvelle ligne lorsqu'elle atteindra la longueur spécifiée (longueur - 1), rencontrera un caractère de nouvelle ligne ou atteindra la fin du fichier (EOF) (selon la première éventualité). La fonction renvoie FALSE en cas d'échec.

La fonction array_pop() supprime le dernier élément du tableau. Renvoie la dernière valeur du tableau. Si le tableau est vide ou n'est pas un tableau, NULL sera renvoyé.

(Recommandation vidéo d'apprentissage : Tutoriel vidéo php)

Implémentation du code :

/**
 * 删除文件最后一行
 * @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);
}

Instructions :

Lecture de mon fichier Après être venu out, la dernière ligne du tableau enregistre false, donc if($fp) est écrit dans le tableau. S'il y a des lignes vides dans le fichier, veuillez supprimer ce jugement et supprimer deux fois la dernière ligne du tableau. Cette méthode ne fonctionne pas si le fichier est trop volumineux pour tenir dans la mémoire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn