Quello che ho riportato qui sotto è il codice
per cambiare i permessi dei file in modo ricorsivo
partendo da un directory.

Il problema è che nel mio caso specifico io devo
modificare solo i files che appartengono all'utente
'apache' (utente che esegue lo scrpt), e lasciare
inalterati gli altri.

Come posso fare?


Codice PHP:
function chmod_R($path$filemode) {
   if (!
is_dir($path))
       return 
chmod($path$filemode);

   
$dh opendir($path);
   while (
$file readdir($dh)) {
       if(
$file != '.' && $file != '..') {
           
$fullpath $path.'/'.$file;
           if(!
is_dir($fullpath)) {
             if (!
chmod($fullpath$filemode))
                 return 
FALSE;
           } else {
             if (!
chmod_R($fullpath$filemode))
                 return 
FALSE;
           }
       }
   }
 
   
closedir($dh);
  
   if(
chmod($path$filemode))
     return 
TRUE;
   else
     return 
FALSE;
}

chmod_R('/var/www/html',0644);