(PHP 4, PHP 5, PHP 7, PHP 8)
chmod — Change le mode du fichier
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);
?>
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.