PHP Velho Oeste 2024

linkinfo

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

linkinfoRenvoie les informations d'un lien

Description

linkinfo(string $path): int|false

Renvoie les informations d'un lien.

Cette fonction est utilisée pour vérifier si un lien (pointé par le chemin path) existe réellement (en utilisant la même méthode que la macro S_ISLNK, définie dans stat.h).

Liste de paramètres

path

Chemin vers le lien.

Valeurs de retour

linkinfo() retourne le champ st_dev de la structure stat Unix C, retourné par l'appel système lstat. Retourne un entier non négatif en cas de succès, -1 dans le cas où le lien n'a pas été trouvé, ou false si une violation open.base_dir survient.

Exemples

Exemple #1 Exemple avec linkinfo()

<?php

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

?>

Voir aussi

add a note add a note

User Contributed Notes 1 note

up
1
rjb at robertjbrown dot com
12 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