> 백엔드 개발 > PHP 문제 > PHP mkdir에서 권한을 변경하는 방법

PHP mkdir에서 권한을 변경하는 방법

藏色散人
풀어 주다: 2023-03-13 17:36:02
원래의
1879명이 탐색했습니다.

php mkdir의 권한을 수정하는 방법: 1. PHP 샘플 파일을 생성합니다. 2. "mkdir('./xw/');chmod('./xw/',0777)을 통해 읽기-쓰기 파일을 생성합니다. );" 메서드 권한이 있는 디렉터리이면 충분합니다.

PHP mkdir에서 권한을 변경하는 방법

이 문서의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

php mkdir의 권한을 변경하는 방법

php에서 mkdir() 함수의 권한 문제

문제 설명:

사용 다음 PHP 코드는 디렉터리를 생성합니다. 예상 디렉터리 권한은 0777입니다. 실제 결과는 0755

mkdir('./aa/',0777);
로그인 후 복사

입니다. 분석 및 테스트 결과:

1. 시스템 umask 에 의해 설정된 기본 권한보다 작거나 같아야 합니다.

예를 들어 Linux의 기본 umask는 일반적으로 0022입니다. 즉, 디렉터리를 생성하는 기본 권한은 0755이므로 이때 php mkdir('./aa/',0777)은 해당 디렉터리의 권한을 가져옵니다. be 0755.

xw@xw-X201:~/Desktop/dd/aa$ umask
0022
xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw/',0777);"
xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw1/',0755);"
xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw2/',0747);"
xw@xw-X201:~/Desktop/dd/aa$ ll
总用量 20
drwxrwxrwx 5 xw xw 4096 2012-06-01 11:58 ./
drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../
drwxr-xr-x 2 xw xw 4096 2012-06-01 11:57 xw/
drwxr-xr-x 2 xw xw 4096 2012-06-01 11:58 xw1/
drwxr--r-x 2 xw xw 4096 2012-06-01 11:58 xw2/
로그인 후 복사

시스템 기본 권한을 777로 변경하면 mkdir()은 더 큰 권한을 지정할 수 있습니다

xw@xw-X201:~/Desktop/dd/aa$ umask 000
xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw2/',0777);"
xw@xw-X201:~/Desktop/dd/aa$ ll
总用量 12
drwxrwxrwx 3 xw xw 4096 2012-06-01 12:08 ./
drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../
drwxrwxrwx 2 xw xw 4096 2012-06-01 12:08 xw2/
로그인 후 복사

2.chmod() 함수는 시스템 umask의 영향을 받지 않으며 시스템 기본 권한보다 더 큰 권한을 설정할 수 있습니다.

xw@xw-X201:~/Desktop/dd/aa$ umask
0022
xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw1/',0777);"
xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw2/');"
xw@xw-X201:~/Desktop/dd/aa$ php -r "mkdir('./xw3/');chmod('./xw3/',0777);"
xw@xw-X201:~/Desktop/dd/aa$ ll
总用量 20
drwxrwxrwx 5 xw xw 4096 2012-06-01 12:12 ./
drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../
drwxr-xr-x 2 xw xw 4096 2012-06-01 12:11 xw1/
drwxr-xr-x 2 xw xw 4096 2012-06-01 12:11 xw2/
drwxrwxrwx 2 xw xw 4096 2012-06-01 12:12 xw3/
로그인 후 복사

3. 시스템의 mkdir 명령은 기본값보다 더 큰 권한을 설정할 수 있습니다.

xw@xw-X201:~/Desktop/dd/aa$ umask
0022
xw@xw-X201:~/Desktop/dd/aa$ mkdir -m0777 xw
xw@xw-X201:~/Desktop/dd/aa$ ll
总用量 12
drwxrwxrwx 3 xw xw 4096 2012-06-01 12:18 ./
drwxr-xr-x 6 xw xw 4096 2012-06-01 11:26 ../
drwxrwxrwx 2 xw xw 4096 2012-06-01 12:18 xw/
로그인 후 복사

요약:

php 읽기 및 쓰기 권한이 있는 디렉터리를 생성하려면 다음 코드를 사용하는 것이 가장 좋습니다. 시스템 umask

mkdir('./xw/');
chmod('./xw/',0777);
로그인 후 복사

의 영향을 피하기 위해 mkdir 함수를 직접 사용하여 권한을 지정하지 마세요. 학습: "PHP 비디오 튜토리얼

위 내용은 PHP mkdir에서 권한을 변경하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿