Pyh.conf’25: a new PHP conference for the Russian-speaking community

fileinode

(PHP 4, PHP 5, PHP 7, PHP 8)

fileinodeВозвращает индексный дескриптор файла

Описание

fileinode(string $filename): int|false

Возвращает индексный дескриптор файла.

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

filename

Путь к файлу.

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

Возвращает номер индексного дескриптора файла или false, если возникла ошибка.

Ошибки

При сбое функция генерирует ошибку уровня E_WARNING.

Примеры

Пример #1 Сравнение индексного дескриптора файла с текущим файлом

<?php
$filename
= 'index.php';
if (
getmyinode() == fileinode($filename)) {
echo
'Вы проверяете текущий файл.';
}
?>

Примечания

Замечание: Результаты функции кешируются. Подробнее о кешировании рассказывает описание функции clearstatcache().

Подсказка

Начиная с PHP 5.0.0 функция научилась работать с отдельными URL-обёртками. Список обёрток, которые поддерживаются семейством функций stat(), приводит раздел «Протоколы и обёртки».

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

  • getmyinode() - Получает значение inode текущего скрипта
  • stat() - Возвращает информацию о файле

Добавить

Примечания пользователей 2 notes

up
1
sofe2038 at gmail dot com
5 years ago
As documented in https://www.php.net/manual/en/function.stat.php#refsect1-function.stat-returnvalues:
> On Windows, as of PHP 7.4.0, this is the identifier associated with the file, which is a 64-bit unsigned integer, so may overflow. Previously, it was always 0.

It appears that fileinode shares the same underlying implementation.
up
0
crrodriguez at opensuse dot org
1 year ago
On the linux kernel, COW filesystems like BTRFS, BcacheFS, etc Inode numbers are not usable to determine if something is the same file.
This is intentional.
To Top