рекурсия — Как рекурсивно установить все разрешения для новой папки, созданной на FTP-сервере с использованием PHP?

Я создал новую папку на FTP-сервере, используя PHP. Теперь я хочу установить все разрешения рекурсивно (то есть одинаковые разрешения должны быть применены ко всем файлам и папкам, находящимся в нем).

Я попытался исследовать эту вещь, затем я узнал о встроенной функции PHP ftp_chmod(), Я искал примеры, где эта функция реализована, но везде я получаю примеры назначения прав доступа к файлу, а не к папке. Так может кто-нибудь, пожалуйста, помогите мне в этом отношении, пожалуйста?

Ниже приведен код, который я пробовал:

$ext = pathinfo($_FILES['student_image']['name'], PATHINFO_EXTENSION);
$student_image_name = 'student_'.$t.'.'.$ext;
$_POST['student_name'] = $student_image_name;
$ftp_server="52.237.5.85";
$ftp_user_name="myservercreds";
$ftp_user_pass="MyServerCreds";

$file = $_FILES['student_image']['name'];//tobe uploaded
$remote_file = "/Students/".$_POST['student_name'];

// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

if($login_result) {
if(!is_dir('ftp://myservercreds:[email protected]/Students')) {
ftp_mkdir($conn_id, "/Students");
ftp_chmod($conn_id, 'all');//Here I'm getting issue in assigning all the permissions recursively to the newly created folder '/Student'
}

Может кто-нибудь, пожалуйста, помогите мне в этом отношении?

1

Решение

ftp_chmod требует 3 аргументов. Второй должен быть intтип эгера, определяющий режим. Третье имя файла. Итак, правильная строка кода будет:

//                  mode      file
ftp_chmod($conn_id, 0777, '/Students'); // access for everyone for read/write

Надеюсь, поможет.

1

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

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

По вопросам рекламы [email protected]