Web Cơ Bản

Danh sách tất cả các hàm dùng để kiểm soát đầu ra trong PHP

- PHP cung cấp một tập hợp các hàm dùng để kierm soát nội dung nào sẽ được gửi đến trình duyệt và khi nào, điều này được gọi là “kiểm soát đầu ra”.

- Đầu ra có thể được đến từ bất kỳ nguồn nào sau đây:

  • print, printf, print_r, echo, . . . . và các hàm, câu lệnh tương tự.
  • Thông báo, cảnh báo, lỗi từ PHP.
  • Bất kỳ nội dung nào bên ngoài thẻ <?php ?>

- PHP có thể giữ kết quả đầu ra trong bộ đệm trước khi gửi cho người dùng.

- Các hàm điều khiển đầu ra có thể tạo bất kỳ số lượng bộ đệm đầu ra nào.

- Bộ đệm đầu ra được đưa ra bởi chương trình. Mỗi bộ đệm đầu ra mới được đặt ở đầu chồng bộ đệm, và bất kỳ đầu ra nào mà nó cung cấp sẽ bị chặn bởi bộ đệm bên dưới.

- Các hàm điều khiển đầu ra chỉ xử lý bộ đệm trên cùng, vì vậy bộ đệm trên cùng cần phải được loại bỏ để kiểm soát các bộ đệm bên dưới nó.

Cấu hình thời gian chạy

- Hoạt động của các hàm điều khiển đầu ra bị ảnh hưởng bởi thông tin cấu hình trong tệp php.ini

Tên Mặc định Mô tả
output_buffering "0" - Bật bộ đệm đầu ra cho tất cả các tệp PHP theo mặc định.
output_handler NULL - Đặt tên cho hàm mặc định xử lý đầu ra của tất cả các bộ đệm đầu ra.
implicit_flush "0" - Cho phép xả ngầm, khiến đầu ra được gửi trực tiếp đến trình duyệt trên mỗi câu lệnh đầu ra.
url_rewriter.tags "a=href,area=href, frame=src,form=,fieldset=" - Chỉ ra thẻ & thuộc tính HTML nào có thể được sửa đổi bởi trình viết lại URL.
url_rewriter.hosts Giá trị hiện tại của $_SERVER['HTTP_HOST'] - Việc viết lại URL chỉ được thực hiện trên các URL của chính máy chủ theo mặc định. Để cho phép viết lại URL của các trang web khác thì các bạn cần phải đặt tên máy chủ của các trang web khác tại đây.

Các hàm kiểm soát đầu ra trong PHP

flush() - Yêu cầu máy chủ gửi đầu ra hiện đang được đệm đến trình duyệt.
ob_clean() - Xóa tất cả nội dung của bộ đệm đầu ra trên cùng.
ob_end_clean() - Xóa bộ đệm đầu ra trên cùng & tất cả nội dung của nó.
ob_end_flush() - Xóa bộ đệm đầu ra trên cùng & xuất tất cả nội dung của nó.
ob_flush() - Xuất nội dung của bộ đệm đầu ra trên cùng & xóa bộ đệm của nội dung.
ob_get_clean() - Trả về tất cả nội dung của bộ đệm đầu ra trên cùng & xóa nội dung khỏi bộ đệm.
ob_get_contents() - Trả về nội dung của bộ đệm đầu ra trên cùng.
ob_get_flush() - Xuất & trả về nội dung của bộ đệm đầu ra trên cùng, sau đó xóa bộ đệm.
ob_get_length() - Trả về số lượng byte dữ liệu có trong bộ đệm đầu ra trên cùng.
ob_get_level() - Cho biết hiện đang có bao nhiêu bộ đệm đầu ra trên ngăn xếp.
ob_get_status() - Trả về thông tin của các bộ đệm đầu ra.
ob_gzhandler() - Được sử dụng như một hàm gọi lại cho ob_start() để nén nội dung của bộ đệm khi gửi nó đến trình duyệt.
ob_implicit_flush() - Bật hoặc tắt chế độ xả ngầm.
ob_list_handlers() - Trả về một mảng các tên hàm gọi lại đang được sử dụng bởi bộ đệm đầu ra trên cùng.
ob_start() - Tạo một bộ đệm đầu ra mới và thêm nó vào đầu ngăn xếp.
output_add_rewrite_var() - Được sử dụng để nối các tham số chuỗi truy vấn vào bất kỳ URL nào trong đầu ra.
output_reset_rewrite_vars() - Xóa tất cả những biến được thêm bởi hàm output_add_rewrite_var() khỏi bộ đệm đầu ra.