adicione uma nota

Notas Enviadas por Usuários (em inglês) 3 notes

up
5
MarkAndrewSlade at gmail dot com
16 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 amslade@jupiter ~$ ln -s a bmslade@jupiter ~$ ls -l {a,b}-rw------- 1 mslade mslade 0 2009-06-10 15:27 alrwxrwxrwx 1 mslade mslade 1 2009-06-10 15:27 b -> amslade@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 1bool(false)mslade@jupiter ~$ php -r "var_dump(readlink('c'));"Warning: readlink(): No such file or directory in Command line code on line 1bool(false)
up
0
casinero dot triste at OH_NO_SPAM dot gmail dot com
8 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;  }}
up
-1
casinero dot triste at OH_NO_SPAM dot gmail dot com
8 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;  }}
To Top