Hàm is_link() trong PHP

04/08/2020 - lượt xem
Chia sẻ
 
Rate this post

Định nghĩa.

Hàm is_link() sẽ kiểm tra xem đường dẫn truyền vào có phải một đường dẫn tượng trưng không.

Cú pháp.

Cú pháp:

is_link ( string $filename ) : bool

Trong đó.

  • $filename là đường dẫn tới file cần kiểm tra.

Giá trị trả về.

  • Hàm sẽ trả về True nếu đường dẫn tồn tại và là một đường dẫn tượng trưng. Ngược lại hàm sẽ trả về Fasle.

Ví dụ.

Ví dụ 1.

code.

<?php
$link = 'uploads';

if (is_link($link)) {
    echo(readlink($link));
} else {
    symlink('uploads.php', $link);
}
?>

Kết quả

bool(true)
bool(false)

Ghi chú.

  • 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ố Supported Protocols and Wrappers. Tham khảo các Giao thức và Trình bao bọc được Hỗ trợ để xác định nhóm chức năng hỗ trợ stat() nào.

Hàm liên quan.

  • is_dir() – Cho biết tên tệp là một thư mục
  • is_file() – Cho biết tên tệp có phải là tệp thông thường không
  • readlink() – Trả về mục tiêu của một liên kết tượng trưng

Thông tin thêm.

  • Để tìm hiểu xem một tệp có được liên kết cứng với tên tệp khác hay không, hãy kiểm tra số lượng liên kết của đầu ra stat (). Nếu nó> 1 thì có một tên tệp khác cho tệp đó. Để tìm hiểu xem hai tên tệp có trỏ đến cùng một tệp hay không, hãy kiểm tra số inode của 2 tên tệp đó. Nếu bằng nhau, 2 tên tệp được liên kết cứng với nhau.
  • Đối với tôi (Debian Sarge VPS) is_link trả về true ngay cả đối với các thư mục nếu bạn không thêm dấu gạch chéo vào tên tệp.
    <?php
    if ($dir{strlen($dir)-1} == '/'$dir substr($dir0, -1);
    is_link($dir);
    ?>
    Điều này làm việc cho tôi. Nó không thể phát hiện ra một liên kết tượng trưng ở đâu đó trong một đường dẫn hoàn chỉnh, mặc dù (tức là is_link (/www/somedir/file.php) sẽ trả về false, giống như is_link (/ www /))
  • Trên windows, hãy cẩn thận rằng is_link trả về false cho các nút. Các cách phân biệt một thư mục từ một điểm nối bao gồm thực hiện cả hai lệnh gọi stat () và lstat () và kiểm tra xem có bất kỳ sự khác biệt nào trong kết quả không

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 is_link() 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