Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Menggantikan Baris dalam Fail Teks Berdasarkan Padanan Kata dalam PHP?

Bagaimana untuk Menggantikan Baris dalam Fail Teks Berdasarkan Padanan Kata dalam PHP?

Susan Sarandon
Lepaskan: 2024-11-28 10:02:12
asal
246 orang telah melayarinya

How to Replace Lines in Text Files Based on Word Matching in PHP?

Menggantikan Baris dalam Fail Teks Berdasarkan Padanan Perkataan Menggunakan PHP

Dalam senario di mana nombor baris tidak diketahui, menggantikan baris tertentu berdasarkan perkataan padanan boleh menjadi satu tugas yang mencabar. Mujurlah, PHP menawarkan beberapa pendekatan berkesan untuk menangani situasi ini:

Untuk Fail yang Lebih Kecil (Muat ke dalam Memori):

  1. Baca keseluruhan fail ke dalam susunan baris menggunakan fail('myfile').
  2. Buat fungsi untuk menggantikan baris yang dikehendaki, seperti replace_a_line($data):

    • Semak jika baris mengandungi perkataan sasaran menggunakan stristr($data, 'perkataan tertentu').
    • Jika ditemui, kembalikan baris gantian sebagai rentetan.
    • Jika tidak, kembalikan baris asal.
  3. Gunakan penggantian berfungsi kepada setiap baris dalam tatasusunan menggunakan array_map('replace_a_line', $data).
  4. Tulis tatasusunan yang diubah suai kembali ke fail menggunakan file_put_contents('myfile', $data).
  5. Tingkatkan kaedah dengan menggunakan fungsi lambda untuk memudahkan array_map:

    • $data = array_map(function($data) { ... }, $data);

Untuk Fail yang Lebih Besar (Memori Intensif):

  1. Buka fail untuk membaca dan menulis menggunakan fopen('myfile', 'r') dan fopen('myfile.tmp', 'w') masing-masing.
  2. Tetapkan bendera untuk menunjukkan sama ada penggantian dibuat ($replaced).
  3. Baca setiap baris dalam fail input menggunakan fgets($reading).
  4. Semak kehadiran perkataan sasaran menggunakan stristr($line, 'certain word').
  5. Jika ditemui, gantikan baris dengan versi diubah suai.
  6. Tulis baris yang dikemas kini pada fail output menggunakan fputs($writing, $line).
  7. Tutup pemegang fail selepas diproses.
  8. Ganti fail asal dengan yang diubah suai hanya jika penggantian dibuat (namakan semula('myfile.tmp', 'myfile')) atau padamkan fail sementara jika tiada penggantian diperlukan (nyahpaut('myfile.tmp')).

Atas ialah kandungan terperinci Bagaimana untuk Menggantikan Baris dalam Fail Teks Berdasarkan Padanan Kata dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan