SunshinePHP Developer Conference 2015

linkinfo

(PHP 4, PHP 5)

linkinfoВозвращает информацию о ссылке

Описание

int linkinfo ( string $path )

Возвращает информацию о ссылке.

Эта функция используется для определения, существует ли ссылка (на которую указывает path) на самом деле (используя тот же метод, что и макрос S_ISLNK, определённый в stat.h).

Список параметров

path

Путь к ссылке.

Возвращаемые значения

linkinfo() возвращает поле st_dev структуры stat из Unix C, которую возвращает системный вызов lstat. Возвращает 0 или FALSE в случае ошибки.

Список изменений

Версия Описание
5.3.0 Эта функция теперь доступна и на Windows платформах (Vista, Server 2008 и выше).

Примеры

Пример #1 Пример использования функции linkinfo()

<?php

echo linkinfo('/vmlinuz'); // 835

?>

Смотрите также

  • symlink() - Создаёт символическую ссылку
  • link() - Создаёт жёсткую ссылку
  • readlink() - Возвращает файл, на который указывает символическая ссылка

add a note add a note

User Contributed Notes 1 note

up
-2
rjb at robertjbrown dot com
2 years ago
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.
To Top