PHP でテキストファイルから行数を指定して行削除する方法

PHP での行削除、とっても簡単だった。

// テキストファイルを全部読み込む
$myFile = file('example.txt');

// コレで「2行目」を削除できる
unset($myFile[1]);

// 書き込む
file_put_contents('example.txt', $myFile);

file() という関数でごそっと中身を読み込むのだが、行ごとに配列に格納されるのが特徴。

似たような関数である file_get_contents() は、全体を文字列として変数に格納するので、「改行コードで分割して配列に変換して、配列を操作しなきゃ〜」みたいに思っていたのだが、file() 関数なら最初から配列になっていた。

そして、unset() 関数を使うと、指定した配列要素を削除できる。行削除になるので、空行として残ったりもしない。イイカンジ。