Hàm readlink() trong PHP

24/11/2020 - lượt xem
Chia sẻ
 
Rate this post

Định nghĩa.

Hàm readlink() sẽ lấy nội dung mà đường dẫn tượng trưng truyền vào sẽ đi tới.

Cú pháp.

Cú pháp:

readlink ( string $path ) : string

Trong đó.

  • $path là đường dẫn tượng trưng.

Giá trị trả về.

  • Hàm sẽ trả về nội dung của đường dẫn tượng trưng, nếu chạy thất bại hám sẽ trả về False. Lưu ý: Chức năng không thành công nếu đường dẫn không phải là liên kết tượng trưng, ​​ngoại trừ trên Windows, nơi đường dẫn chuẩn hóa sẽ được trả về.

Changelog.

  • 5.3.0 Chức năng này hiện khả dụng trên nền tảng Windows (Vista, Server 2008 trở lên).

Ví dụ.

Ví dụ # 1.

code.

<?php

// output e.g. /boot/vmlinux-2.4.20-xfs
echo readlink('/vmlinuz');

?>

Hàm liên quan.

  • is_link() – Cho biết tên tệp có phải là một liên kết tượng trưng hay không
  • symlink() – Tạo một liên kết tượng trưng
  • linkinfo() – Nhận thông tin về một liên kết

Thông tin thêm.

  • Điều này sẽ kích hoạt một cảnh báo và trả về false nếu bạn chuyển nó một liên kết không phải là liên kết tượng trưng. Nếu tệp không tồn tại, nó sẽ kích hoạt một cảnh báo có từ ngữ khác.
    mslade@jupiter ~$ touch a
    mslade@jupiter ~$ ln -s a b
    mslade@jupiter ~$ ls -l {a,b}
    -rw------- 1 mslade mslade 0 2009-06-10 15:27 a
    lrwxrwxrwx 1 mslade mslade 1 2009-06-10 15:27 b -> a
    mslade@jupiter ~$ php -r "var_dump(readlink('b'));"
    string(1) "a"
    mslade@jupiter ~$ php -r "var_dump(readlink('a'));"
    Cảnh báo: readlink (): Đối số không hợp lệ trong Mã dòng lệnh trên dòng 1 bool(false) mslade @ jupiter ~ $ php -r “var_dump (readlink (‘c’));” Cảnh báo: readlink (): Không có tệp hoặc thư mục như vậy trong Mã dòng lệnh trên dòng 1 bool (false)
  • Một chức năng nhỏ để đọc liên kết ĐẾN CUỐI: (realpath không thể làm điều này nếu liên kết tượng trưng (cuối cùng) trỏ đến một đường dẫn không tồn tại, vì nó chỉ trả về false trong trường hợp này.)
    function readlinkToEnd($linkFilename) {
      if(!is_link($linkFilename)) return $linkFilename;
      $final = $linkFilename;
      while(true) {
        $target = readlink($final);
        if(substr($target, 0, 1)=='/') $final = $target;
        else $final = dirname($final).'/'.$target;
        if(substr($final, 0, 2)=='./') $final = substr($final, 2);
        if(!is_link($final)) return $final;
      }
    }

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