(PHP 4, PHP 5, PHP 7, PHP 8)
chmod — Change le mode du fichier
$filename
, int $permissions
): bool
Remplace le mode du fichier filename
par le mode permissions
.
filename
Chemin vers le fichier.
permissions
Il est à noter que le mode permissions
est
considéré comme un nombre en notation octale, aussi, afin de
vous en assurer, vous pouvez préfixer le mode
permissions
par un zéro. Les chaînes comme "g+w"
ne fonctionneront pas correctement :
<?php
chmod("/somedir/somefile", 755); // notation décimale : probablement faux
chmod("/somedir/somefile", "u+rwx,go+rx"); // chaîne : incorrect
chmod("/somedir/somefile", 0755); // notation octale : valeur du mode correcte
?>
Le paramètre permissions
est constitué de trois
valeurs octales qui spécifient les droits pour le propriétaire,
le groupe du propriétaire et les autres, respectivement. Chaque
composant peut être calculé en ajoutant les droits désirés.
Le chiffre 1 donne les droits d'exécution, le chiffre 2 les droits
d'écriture et le chiffre 4 les droits de lecture. Ajoutez simplement
ces nombres pour spécifier les droits voulus. Vous pouvez aussi
lire le manuel des systèmes Unix avec man 1 chmod et
man 2 chmod.
<?php
// Lecture et écriture pour le propriétaire, rien pour les autres
chmod("/somedir/somefile", 0600);
// Lecture et écriture pour le propriétaire, lecture pour les autres
chmod("/somedir/somefile", 0644);
// Tout pour le propriétaire, lecture et exécution pour les autres
chmod("/somedir/somefile", 0755);
// Tout pour le propriétaire, lecture exécution pour le groupe, rien pour les autres
chmod("/somedir/somefile", 0750);
?>
Cette fonction retourne true
en cas de succès ou false
si une erreur survient.
En cas d'échec, une erreur E_WARNING
est émis.
Note:
L'utilisateur courant est l'utilisateur avec lequel PHP fonctionne. Il est probablement différent de l'utilisateur que vous utilisez en mode Shell ou FTP. Le mode ne peut être modifié que par l'utilisateur à qui appartient le fichier sur la plupart des systèmes.
Note: Cette fonction ne fonctionne pas avec les fichiers distants, car le fichier examiné doit être accessible sur le système de fichiers du serveur.