#php #chmod #fwrite
#php #chmod #fwrite
Вопрос:
Привет, я хочу записать в файл с помощью php, но я ничего не могу написать. Когда я пишу эту тестовую функцию, я получаю ошибку «Не удается изменить режим определения файла». Как можно использовать chmod и чтобы я мог записать в файл спасибо за помощь..
<?php
function file_write($filename, $flag, amp;$content) {
if (file_exists($filename)) {
if (!is_writable($filename)) {
if (!chmod($filename, 0666)) {
echo "Cannot change the mode of file ($filename)";
exit;
};
}
}
if (!$fp = @fopen($filename, $flag)) {
echo "Cannot open file ($filename)";
exit;
}
if (fwrite($fp, $content) === FALSE) {
echo "Cannot write to file ($filename)";
exit;
}
if (!fclose($fp)) {
echo "Cannot close file ($filename)";
exit;
}
}
$a="osman"; file_write("deneme", "w", amp;$a);
?>
Ответ №1:
Обратитесь к руководству по php и функции chmod()http://php.net/manual/en/function.chmod.php поскольку вам нужны разрешения на запись для этой папки / файла
Комментарии:
1. Я уже читал там, даже эта тестовая функция была взята с этой страницы. но я не смог найти никакого решения…
2. какой у вас сейчас chmod файла? вы пытались изменить chmod
3. да, хотя я меняю chmod в терминале, я не могу изменить с помощью php. даже безопасный режим выключен, но я все равно не могу использовать chmod: S
4. какой у вас ssh user: group и какой у вас веб-сервер / php user: group и какие у вас права доступа к файлам в папке прямо сейчас. Вы можете узнать это с помощью ls- la filename и ls -la foldername
Ответ №2:
Я думаю, что главное в том, что «Текущий пользователь — это пользователь, под которым запускается PHP». Можете ли вы выполнить chmod
работу с файлом, который вы создали с помощью php-скрипта?
Комментарии:
1. Я не могу ни записать, ни создать файл
Ответ №3:
Я не уверен, заглядывали ли вы в umask.