Đọc ghi file trong PHP

Đọc ghi file là một phương pháp hữu hiệu để xử lý vấn đề lưu ký ức hoạt động của hệ thống hoặc cũng có thể dùng để debug các lỗi trong quá trình hệ thống vận hành, từ đó có thể đưa ra phương án giải quyết.

Source code đọc ghi file không hề khó, tuy nhiên nhiều programmer không thể nhớ ra các function đơn giản này một sớm một chiều, đa phần là google hoặc lật các đoạn code cũ ra dùng.

Chính vì sự quan trọng của nó cũng như cung cấp thêm cho thư viện kiến thức PHP của Việt Nam thêm một vài thông tin bổ ích. Hôm nay mình sẽ chia sẻ với các bạn các function đơn giản này.

Mình sẽ cung cấp 2 hàm đọc ghi file theo hướng đối tượng cho các bạn dễ hình dung cũng như sau này dùng lại được nhiều lần. Chỉ cần gọi ra là dùng ngay.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php 
 class log {
  function __construct() {}
  /** 
   * Ghi file trong PHP 
   * */
  public function write($error){
   $file = "Log.ini";
   $handle = fopen($file, 'a'); //w
   fwrite($handle, $error."n");
   fclose($handle);
  }
  /**
   * Đọc file trong PHP
   *   */
  public function read()
  {
   $file = "Log.ini";
   $handle = fopen($file, 'r');
   while(!feof($handle))
   {
    echo fgets($handle). "<br>";
   }
   fclose($handle);
  }
 
 }
 //Cho phép hiển thị tiếng việt HTML
 echo "<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />";
 // Kiểm tra các hàm trên hoạt động như thế nào.
 $log = new log;
 $log->write("Welcome to phamngoctan.com");
 $log->write("Nơi để bạn học PHP và tiếng anh cho ITer");
 $log->read();
 ?>

Các bạn chú ý một số chế độ (mode) để mở file sau:

  1. r+“: Mở file để đọc và ghi. Ghi đè.
  2. r“: Mở file cho phép đọc.
  3. w“: Mở file để ghi, file chưa tồn tại thì tạo file mới. Chế độ ghi đè lên. Nội dung file cũ bị mất.
  4. w+“: Tương tự như chế độ w nhưng có thể đọc file được.
  5. a“: Ghi file, nhưng không đè lên file cũ mà sẽ ghi tiếp vào file cũ. Nếu file chưa tồn tại thì tạo file mới. Đây là chế độ mình hay dùng để đọc nhất.
  6. a+“: Tương tự a, nhưng có thể đọc file được.
  7. x“: Ghi file, nhưng ngược lại với chế độ a. Nếu file tồn tại thì báo lỗi, ngược lại chưa tồn tại thì tạo file mới.
  8. x+“: Tương tự x nhưng có thể đọc file được.
Bài tiếp theo, đọc ghi file xml trong PHP.
Phạm Ngọc Tân

 

Related Posts

Comments (4)

  1. Unknown
    April 02, 2014

    anh cho em hỏi file ở đây là file gì ạ ???

    Reply
  2. Tân Phạm Ngọc
    April 02, 2014

    Chỉ đơn thuần là file bạn muốn ghi dữ liệu vào thôi. Còn đuôi file như thế nào thì tùy bạn quy định thôi à. Ví dụ như file .ini, file .txt, file .abc, bla bla bla

    Reply
  3. Le Zung
    April 05, 2014

    Bạn ơi. mình ghi dữ liệu vào file được rùi. Tuy nhiên chạy localhost quay rất lâu, cảm giác như bị treo trình duyệt. rối nó báo phải restart lại trind duyệt. Đấy lại lỗi gì hay làm sao hả bạn. Cám ơn nhé

    Reply
  4. Tân Phạm Ngọc
    April 05, 2014

    Uh, một nguyên nhân mà gây ra cảm giác bị treo như bạn nói chính là bị vòng lặp vô tận – không có điểm dừng. Bạn check lại vòng lặp while xem sao nha?

    Reply

Leave a Comment!

Your email address will not be published. Required fields are marked *