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.
(PHP 4, PHP 5, PHP 7, PHP 8)
fileinode — Lit le numéro d'inode du fichier
filename
Chemin vers le fichier.
Retourne le numéro d'inode du fichier, ou false
si une erreur survient.
En cas d'échec, une alerte de type E_WARNING
sera émise.
Exemple #1 Comparaison de l'inode d'un fichier avec le fichier courant
<?php
$filename = 'index.php';
if (getmyinode() == fileinode($filename)) {
echo 'Vous vérifiez le fichier courant.';
}
?>
Note: Les résultats de cette fonction sont mis en cache. Voyez la fonction clearstatcache() pour plus de détails.
À partir de PHP 5.0.0, cette fonction peut aussi être utilisée avec quelques protocoles url. Lisez Liste des protocoles et des gestionnaires supportés pour connaître les protocoles supportant la famille de fonctionnalités de stat().
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.
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.