Việc ghi dữ liệu trong PHP rất dễ dàng - hàm log () được cung cấp bởi LogTrait , là tổ tiên chung cho hầu hết các lớp PHP.
Cấu hình ghi nhật ký
Chúng ta có thể cấu hình log trong file config / app.php . Có một phần bản ghi trong tệp nơi bạn có thể định cấu hình các tùy chọn ghi nhật ký như được hiển thị trong ảnh chụp màn hình sau đây.![]() |
| Lập trình PHP |
Theo mặc định, bạn sẽ thấy hai mức nhật ký - lỗi và gỡ lỗi đã được định cấu hình cho bạn. Mỗi sẽ xử lý mức độ khác nhau của tin nhắn.
PHP hỗ trợ các mức ghi khác nhau như hình dưới đây
Khẩn cấp - Hệ thống không sử dụng được
Cảnh báo - Hành động phải được thực hiện ngay lập tức
Quan trọng - Điều kiện quan trọng
Lỗi - Điều kiện lỗi
Cảnh báo - Điều kiện cảnh báoThông báo - Tình trạng bình thường nhưng quan trọng
Thông tin - Thông báo thông tin
Gỡ lỗi - Thông báo cấp độ gỡ lỗi
Ghi vào tệp nhật ký
Có hai cách mà chúng ta có thể viết trong tệp nhật ký.
Đầu tiên là sử dụng phương thức write () tĩnh . Sau đây là cú pháp của phương thức static write () .
| Cú pháp | viết (số nguyên | chuỗi $ cấp , trộn $ message , string | array $ context[]) |
|---|---|
| Thông số | Mức độ nghiêm trọng của thông điệp được viết. Giá trị phải là một số nguyên hoặc chuỗi khớp với một mức đã biết. Nội dung tin nhắn để đăng nhập. Dữ liệu bổ sung sẽ được sử dụng để ghi nhật ký tin nhắn. scopeChìa khóa đặc biệt có thể được thông qua để được sử dụng để lọc thêm các công cụ đăng nhập được sử dụng. Nếu một chuỗi hoặc một mảng chỉ mục số được truyền, nó sẽ được coi là scopekhóa. Xem Cake \ Log \ Log :: config () để biết thêm thông tin về phạm vi ghi nhật ký. |
| Trả lại | boolean |
| Sự miêu tả | Viết thông báo và kiểu đã cho cho tất cả các bộ điều hợp log được cấu hình. Bộ điều hợp được cấu hình được chuyển cả biến số $ và $. $ level là một trong các chuỗi / giá trị sau. |
Thí dụ
Thực hiện các thay đổi trong tệp config / routes.php như được hiển thị trong chương trình sau.config / routes.php
<?php use Cake\Core\Plugin; use Cake\Routing\RouteBuilder; use Cake\Routing\Router; Router::defaultRouteClass('DashedRoute'); Router::scope('/', function (RouteBuilder $routes) { $routes->connect('logex',['controller'=>'Logexs','action'=>'index']); $routes->fallbacks('DashedRoute'); }); Plugin::routes();Tạo một tập tin LogexController.php tại src / Controller / LogexController.php . Sao chép mã sau trong tệp bộ điều khiển.
src / Controller / LogexController.php
<?php namespace App\Controller; use App\Controller\AppController; use Cake\Log\Log; class LogexsController extends AppController{ public function index(){ /*The first way to write to log file.*/ Log::write('debug',"Something didn't work."); /*The second way to write to log file.*/ $this->log("Something didn't work.",'debug'); } } ?>Tạo một thư mục Logexs tại src / Template và dưới thư mục đó tạo một tập tin View có tên là index.ctp . Sao chép mã sau vào tệp đó.
src / Mẫu / Logexs / index.ctp
Something is written in log file. Check log file logs\debug.log
Thực hiện ví dụ trên bằng cách truy cập URL sau.
http: // localhost: 85 / PHP / logex
Đầu ra
Khi thực hiện, bạn sẽ nhận được kết quả sau.![]() |
| lập trình PHP chuyên nghiệp |


Không có nhận xét nào:
Đăng nhận xét