алгоритм — установить chmod для полного пути в переполнении стека

У меня есть входной путь: /var/www/site.com/1/2/3/4/file.php

Я бы хотел: установите chmod 755 для каждого элемента после /var/www/site.com/

например сделать это по универсальному алгоритму:

chmod ('/var/www/site.com/1/', 0755);
chmod ('/var/www/site.com/1/2/', 0755);
chmod ('/var/www/site.com/1/2/3/', 0755);
chmod ('/var/www/site.com/1/2/3/4/', 0755);
chmod ('/var/www/site.com/1/2/3/4/file.php', 0755);

Не могли бы вы мне помочь, пожалуйста?

P.S .: Просто только chmod полный путь, а не рекурсивный.

1

Решение

<?php
function chmod_path($base, $path, $perm) {
$full_path = $base;
foreach (explode(DIRECTORY_SEPARATOR, $path) as $dentry) {
$full_path .= DIRECTORY_SEPARATOR.$dentry;
chmod($full_path, $perm);
}
}

chmod_path('/var/www/site.com', '1/2/3/4/file.php', 0755);
?>
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector