Hàm filemtime() trong PHP có chức năng gì?

23/07/2020 - lượt xem
Chia sẻ
 
Rate this post

Định Nghĩa.

Hàm filemtime() trả về thời điểm lần thay đổi nội dung cuối cùng của một tập tin được chỉ định.

Cú pháp.

Cú pháp:

filemtime ( string $filename ) : int

Trong đó.

  • $filename là đường dẫn tới file.

Giá trị trả về.

  • Trả về thời gian tệp được sửa đổi lần cuối hoặc FALSE khi không thành công. Thời gian được trả về dưới dạng Unix timestamp, phù hợp với hàm date()

– Lưu ý: Hàm này trả về thời gian khi các khối dữ liệu của tệp được ghi vào, nghĩa là thời gian khi nội dung của tệp được thay đổi

Errors/Exceptions.

  • Khi thất bại một lỗi mức độ E_WARNING được được hiện ra.

Ví dụ.

ví dụ 1 sử dụng đơn giản

code:

<?php
// đầu ra, ví dụ somefile.txt được sửa đổi lần cuối: ngày 29 tháng 12 năm 2002 22:16:23.

$filename = 'somefile.txt';
if (file_exists($filename)) {
    echo "$filename was last modified: " . date ("F d Y H:i:s.", filemtime($filename));
}
?>

Ghi chú.

  • Lưu ý rằng độ phân giải thời gian có thể khác nhau từ một hệ thống tập tin khác.
  • Kết quả của chức năng này được lưu trữ. Xem Clearstatcache () để biết thêm chi tiết.
  • Kể từ phiên bản PHP 5.0.0, chức năng này cũng có thể được sử dụng với một số trình bao bọc URL. Tham khảo các Supported Protocols and Wrappers  để xác định nhóm chức năng hỗ trợ stat() nào.

Hàm liên quan.

  • filectime() – Gets inode change time of file
  • stat() – Gives information about a file
  • touch() – Sets access and modification time of file
  • getlastmod() – Gets time of last page modificatio.

Thông tin thêm.

  • Đây là một chức năng rất tiện dụng để xử lý bộ nhớ đệm trình duyệt. Ví dụ: giả sử bạn có biểu định kiểu và bạn muốn đảm bảo mọi người đều có phiên bản mới nhất. Bạn có thể đổi tên nó mỗi khi bạn chỉnh sửa nó, nhưng đó sẽ là một nỗi đau ở mông. Thay vào đó, bạn có thể làm điều này:
    <?php
    echo '<link rel="stylesheet" type="text/css" href="style.css?' . filemtime('style.css') . '" />';
    ?>
    //Kết quả: <link rel="stylesheet" type="text/css" href="style.css?1203291283" />
    Bằng cách nối thêm giá trị GET (the UNIX timestamp) vào URL biểu định kiểu, bạn làm cho trình duyệt nghĩ rằng biểu định kiểu là động, do đó, nó sẽ tải lại biểu định kiểu mỗi khi ngày sửa đổi thay đổi.
  • Để có được thời gian sửa đổi cuối cùng của một thư mục, bạn có thể sử dụng điều này.
    <pre>
    $getLastModDir = filemtime("/path/to/directory/.");
    </pre>
    – Hãy lưu ý đến dấu chấm cuối cùng cần thiết để xem thư mục dưới dạng tệp và để thực sự có được ngày sửa đổi cuối cùng của nó. – Điều này rất hữu ích khi bạn chỉ muốn một tin nhắn ‘cập nhật lần cuối’ trên trang nhất của trang web của bạn và vẫn đưa tất cả các tệp của trang web của bạn vào tài khoản.
  • Một cách đơn giản hơn để mã hóa bộ đệm.
    <?php
    $cache_file = 'URI to cache file';
    $cache_life = '120'; //caching time, in seconds
    
    $filemtime = @filemtime($cache_file);  // returns FALSE if file does not exist
    if (!$filemtime or (time() - $filemtime >= $cache_life)){
        ob_start();
        resource_consuming_function();
        file_put_contents($cache_file,ob_get_flush());
    }else{
        readfile($cache_file);
    }
    ?>

Các bạn có thể xem chi tiết hơn trên php.net.

Hi vọng với bài viết này, bạn đã hiểu rõ ứng dụng của hàm filemtime() trong PHP. Nếu bạn thấy bài viết hay và có ý nghĩa hãy like và chia sẻ bài viết này để mọi người cùng nhau học tập nhé. Cảm ơn các bạn đã ghé thăm codetutam.com

    Liên hệ với chúng tôi

    Để lại thông tin để nhận được các bài viết khác

    Rate this post

    Xem thêm nhiều bài tin mới nhất về Kiến thức

    Xem thêm