Reviewed by Sutiono S.Kom., M.Kom., M.T.I by Hanifah Nurbaeti December 1, 2020 by Hanifah Nurbaeti
December 1, 2020 Contoh <?php
echo readlink("/user/testlink");
?> Section Artikel
Dapatkan target tautan simbolis:
Definisi dan Penggunaan
Fungsi readlink() dapat digunakan untuk mengembalikan target dari tautan simbolik.
Syntax
readlink(linkpath)
Nilai Parameter
linkpath | Required. Menentukan jalur link untuk diperiksa |
Detail Teknis
Target link sukses, FALSE jika gagal |
4.0+ |
PHP 5.3: readlink() sekarang tersedia di platform Windows |
filesystemphp
Hanifah Nurbaeti
previous post
Fungsi realpath_cache_size() PHPnext post
Fungsi readfile() PHPYou may also like
Codeigniter vs Laravel : Apa Perbedaannya? Simak Penjelasannya
March 23, 2021
Perbedaan Error Handling Pada PHP: die () Vs...
March 19, 2021
PHP 8 Rilis : Kenalan Dengan Fitur Utama...
February 8, 2021
Tipe Data Dalam Bahasa Pemrograman PHP
January 18, 2021
Referensi Timezone Pada PHP
December 30, 2020
Fungsi Zip zip_read() Pada PHP
December 30, 2020
Fungsi Zip zip_open() Pada PHP
December 30, 2020
Fungsi Zip zip_entry_read() Pada PHP
December 30, 2020
Fungsi Zip zip_entry_open() Pada PHP
December 30, 2020
Fungsi Zip zip_entry_name() Pada PHP
December 30, 2020
Contoh
Buat tautan simbolis:
<?php $target = "downloads.php"; $link = "downloads"; symlink($target, $link); echo readlink($link); ?>
Definisi dan Penggunaan
Fungsi symlink() digunakan untuk membuat tautan simbolis dari target yang ada dengan tautan nama yang ditentukan.
Catatan: Ini bukan link HTML, tetapi link di sistem file.
Syntax
symlink(target, link)
Nilai Parameter
target | Required. Menentukan target link |
link | Required. Menentukan nama link |
Detail Teknis
TRUE jika sukses dan FALSE jika gagal |
4.0+ |
PHP 5.3: Tersedia di platform Windows |
(PHP 4, PHP 5, PHP 7, PHP 8)
readlink — Returns the target of a symbolic link
Description
readlink(string $path): string|false
Parameters
pathThe symbolic link path.
Return Values
Returns the contents of the symbolic link path or false on error.
Note: The function fails if path is not a symlink, except on Windows, where the normalized path will be returned.
Examples
Example #1 readlink() example
<?php// output e.g. /boot/vmlinux-2.4.20-xfs
echo readlink('/vmlinuz');?>
See Also
- is_link() - Tells whether the filename is a symbolic link
- symlink() - Creates a symbolic link
- linkinfo() - Gets information about a link
MarkAndrewSlade at gmail dot com ¶
13 years ago
This will trigger a warning and return false if you pass it a non-symlink. If the file doesn't exist, it will trigger a differently worded warning.
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'));"
Warning: readlink(): Invalid argument in Command line code on line 1
bool(false)
mslade@jupiter ~$ php -r "var_dump(readlink('c'));"
Warning: readlink(): No such file or directory in Command line code on line 1
bool(false)
casinero dot triste at OH_NO_SPAM dot gmail dot com ¶
5 years ago
A little function to readlink TO THE END:
(realpath can't do this if the symlink (ultimately) points to a non-existing path, since it just returns false in this case.)
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;
}
}
casinero dot triste at OH_NO_SPAM dot gmail dot com ¶
5 years ago
A little function to readlink TO THE END:
(realpath can't do this if the symlink (ultimately) points to a non-existing path, since it just returns false in this case.)
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;
}
}
ayon at hyurl dot com ¶
5 years ago
It is neccesary to be notified that readlink only works for a real link file, if this link file locates to a directory, you cannot detect and read its contents, the is_link() function will always return false and readlink() will display a warning is you try to do. Like the following codes:
<?php
//assume that A is a directory located in C:, B is a symlink to A, and A contents a file named C.
echo is_link('B/C'); //false
echo readlink('B/C'); //false and a warning will be displayed
//instead, you should use realpath() function to get the real path of C
echo realpath('B/C'); //C:\A\C
?>