PHP fopen() 함수
함수 정의 및 사용법: fopen() 함수는 파일이나 URL을 엽니다.
구문:
fopen(filename,mode,include_path,context)
마지막 두 매개변수는 선택사항이며 처음 두 매개변수만 사용하며 코드는 다음과 같습니다. :
<code><span><span><?php</span><span>//打开文件流</span><span>$myfile</span> = fopen(<span>"newfile.txt"</span>, <span>"w"</span>) <span>or</span><span>die</span>(<span>"Unable to open file!"</span>); <span>//向文件中写入字符串</span> fwrite(<span>$myfile</span>, <span>"Hello World"</span>); <span>//关闭文件句柄</span> fclose(<span>$myfile</span>); <span>?></span></span></code>
코드에 의해 구현된 기능은 현재 경로에서 newfile.txt라는 파일을 쓰기 모드로 열고, 파일이 없으면 생성을 시도하는 것입니다. 파일을 연 후 파일에 Hello World 문자열을 쓰고 마지막으로 파일을 닫습니다.
현재 폴더 경로에 newfile.txt 파일이 없습니다. 위 코드를 실행하면 다음 오류가 발생합니다.
경고: fopen(newfile.txt): 실패했습니다. 오픈 스트림:
/home/yums/web/blog_for_r&d/scripts/testOpen.php 3행
에 권한이 충분하지 않습니다. 파일을 열 수 없습니다!
권한이 부족합니까? Linux에서 가장 일반적인 문제는 하드 디스크에 파일을 생성할 수 있는 권한이 없다는 것입니다. testOpen.php에 더 높은 권한을 부여하려고 하여 터미널에서 다음 명령을 실행했습니다.
<code><span>sudo</span> chmod <span>666</span> testOpen.php</code>
이렇게 하면 PHP 파일에 파일 생성 권한이 부여되고 페이지를 새로 고쳐 봅니다. 인터뷰, WTF, 여전히 같은 질문입니다!
경고: fopen(newfile.txt): 스트림을 열지 못했습니다: 3행의
/home/yums/web/blog_for_r&d/scripts/testOpen.php에 권한이 부족합니다
파일을 열 수 없습니다!
잊으세요. 파일을 생성하는 데 이 기능이 필요하지 않습니다. 저는 newfile.txt 파일을 직접 생성하기 위해 gedit를 사용합니다. 그래서 터미널에서 다음 명령을 실행했습니다.
<code>gedit newfile<span>.txt</span></code>
이런 식으로 파일을 생성하고 새로 고쳤습니다. 그러나 여전히 권한이 부족합니다. newfile.txt 파일이 있습니다. 터미널에서 다음 명령을 실행합니다.
<code>ls -<span>all</span></code>
메모장으로 만든 newfile.txt에는 읽기 권한만 있고 쓰기 권한은 없습니다. 그런데 문제는 여기에 있습니다. newfile.txt 파일의 쓰기 권한. 권한:
<code><span>sudo</span> chmod <span>666</span> newfile.txt</code>
이제 페이지를 새로 고치면 오류가 보고되지 않으며 해당 문자열이 파일에 기록됩니다.
').addClass('사전 번호 매기기').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); });위 내용은 PHP에서 fopen 함수를 사용하여 파일을 열 때 발생하는 권한 부족 문제에 대한 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.