Hướng dẫn dùng tmpfiles trong PHP

Hàm tmpfile() sẽ tạo file tạm với tên file là duy nhất và có quyền đọc và viết( w+).

Hướng dẫn dùng tmpfiles trong PHP

Hướng dẫn dùng tmpfiles trong PHP

Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

File sẽ tự động bị xóa sau khi bạn đóng file, hoặc khi đoạn chương trình kết thúc.

Cú pháp

Cú pháptmpfile();

Hàm tmpfile() không nhận tham số truyền vào.

Bài viết này được đăng tại [free tuts .net]

Kết quả trả về

Hàm sẽ trả về một handle, tương tự như kết quả trả về của hàm fopen(). Nếu chạy thất bại, hàm sẽ trả về False.

Ví dụ

Cách sử dụng hàm tmpfile():

Code

$temp = tmpfile();
fwrite($temp, "this is a test file content");
fseek($temp, 0);
echo fread($temp, 1024);
fclose($temp); // this removes the file

Kết quả

this is a test file content

Tham khảo: php.net

  • Định nghĩa.
  • Cú pháp.
    • Cú pháp:
    • Trong đó.
    • Giá trị trả về.
  • Ghi chú.
  • Ví dụ.
    • Ví dụ # 1.
  • Hàm liên quan.
  • Thông tin thêm.

Định nghĩa.

Hàm tmpfile() sẽ tạo file tạm với tên file là duy nhất và có quyền đọc và viết( w+). File sẽ tự động bị xóa sau khi bạn đóng file, hoặc khi đoạn chương trình kết thúc.

Cú pháp.

Cú pháp:

tmpfile ( void ) : resource

Trong đó.

  • Hàm tmpfile() không nhận tham số truyền vào.

Giá trị trả về.

  • Hàm sẽ trả về một handle, tương tự như kết quả trả về của hàm fopen(). Nếu chạy thất bại, hàm sẽ trả về False.

Ghi chú.

  • Thận trọng Nếu tập lệnh kết thúc đột ngột, tệp tạm thời có thể không bị xóa.
  • Tệp sẽ tự động bị xóa khi đóng (ví dụ: bằng cách gọi fclose () hoặc khi không còn tham chiếu nào đến xử lý tệp được trả về bởi tmpfile ()) hoặc khi tập lệnh kết thúc.

Ví dụ.

Ví dụ # 1.

code.

<?php
$temp = tmpfile();
fwrite($temp, "writing to tempfile");
fseek($temp, 0);
echo fread($temp, 1024);
fclose($temp); // this removes the file
?>

Ví dụ trên sẽ xuất ra:

writing to tempfile

Hàm liên quan.

  • tempnam() – Tạo tệp với tên tệp duy nhất
  • sys_get_temp_dir() – Trả về đường dẫn thư mục được sử dụng cho các tệp tạm thời

Thông tin thêm.

  • Để lấy đường dẫn tệp cơ bản của con trỏ tệp tmpfile:
    <?php
    $file tmpfile();
    $path stream_get_meta_data($file)['uri']; 
    ?>
  • Tôi thấy chức năng này hữu ích khi tải tệp lên qua FTP. Một trong những tệp tôi đang tải lên được nhập từ một vùng văn bản trên trang trước, vì vậy thực sự không có “tệp” nào để tải lên, điều này đã giải quyết vấn đề một cách tuyệt vời:
    <?php
        $fSetup tmpfile();
        fwrite($fSetup,$setup);
        fseek($fSetup,0);
        if (!ftp_fput($ftp,"inc/setup.inc",$fSetup,FTP_ASCII)) {
            echo "<br /><i>Setup file NOT inserted</i><br /><br />";
        }
        fclose($fSetup);
    ?>
    Biến $ setup là nội dung của vùng văn bản. Và tôi không chắc bạn có cần fseek ($ temp, 0) hay không; trong đó, chỉ cần để nó trừ khi bạn biết nó không ảnh hưởng đến nó.
  • Vì chức năng này có thể không hoạt động trong một số môi trường, đây là một giải pháp đơn giản:
    function temporaryFile($name, $content)
    {
        $file = DIRECTORY_SEPARATOR .
                trim(sys_get_temp_dir(), DIRECTORY_SEPARATOR) .
                DIRECTORY_SEPARATOR .
                ltrim($name, DIRECTORY_SEPARATOR);
    
        file_put_contents($file, $content);
    
        register_shutdown_function(function() use($file) {
            unlink($file);
        });
    
        return $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 tmpfile() 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