• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • linkinfo()

    (PHP 4, PHP 5, PHP 7)

    获取一个连接的信息

    说明

    linkinfo(string $path): int

    获取一个连接的信息。

    本函数用来验证一个连接(由$path所指向的)是否确实存在(使用stat.h中的 S_ISLNK 宏同样的方法)。

    参数

    $path

    连接的路径。

    返回值

    linkinfo()返回lstat系统调用所返回的 UNIX C stat 结构中的st_dev字段。如果出错则返回 0 或FALSE

    更新日志

    版本说明
    5.3.0Windows 平台上开始可用(Vista、Server 2008 或更高版本)。

    范例

    Example #1linkinfo()例子

    <?php
    echo linkinfo('/vmlinuz'); // 835
    ?>
    

    参见

    I expected this function to return FALSE or 0 if a symbolic link did not exist (per the documentation above), but that's not what happened. Reading the man page for the Linux kerne's stat call here: http://www.kernel.org/doc/man-pages/online/pages/man2/stat.2.html it says this:
    RETURN VALUE - On success, zero is returned. On error, -1 is returned, and errno is set appropriately.
    ... which is what is happening in my case. I am doing a linkinfo('/path/to/file'); on a missing symlink, and I get back a value of -1. As we know, a value of -1 is not going to evaluate to a FALSE or 0.
    My point - be careful with return values for missing symlinks.

    上篇:link()

    下篇:lstat()