Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk menukar kebenaran dalam php mkdir
Cara mengubah suai kebenaran dalam php mkdir: 1. Cipta fail contoh PHP 2. Cipta melalui "mkdir('./xw/');chmod('./xw/',0777) ;" kaedah Direktori dengan kebenaran baca dan tulis sudah memadai.
Persekitaran pengendalian artikel ini: sistem windows7, versi PHP7.1, komputer DELL G3
Cara menukar kebenaran daripada php mkdir?
Isu kebenaran dengan fungsi mkdir() dalam php
Penerangan masalah:
Gunakan kod php berikut untuk mencipta direktori yang dijangkakan daripada direktori ialah 0777. Hasil sebenar ialah 0755
mkdir('./aa/',0777);
Hasil analisis dan ujian:
1 Keizinan direktori yang ditentukan oleh fungsi mkdir() hanya boleh kurang daripada atau sama kepada kebenaran lalai yang ditetapkan oleh umask sistem.
Sebagai contoh, umask lalai Linux biasanya 0022, iaitu, kebenaran lalai untuk mencipta direktori ialah 0755, jadi pada masa ini php mkdir('./aa/',0777) mendapat kebenaran daripada direktori menjadi 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/
Tukar keizinan lalai sistem kepada 777, mkdir() boleh menentukan kebenaran yang lebih besar
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/
fungsi 2.chmod() tidak terjejas oleh umask sistem, dan boleh menetapkan kebenaran lebih besar daripada kebenaran lalai sistem.
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. Perintah mkdir sistem boleh menetapkan kebenaran lebih besar daripada nilai lalai.
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/
Ringkasan:
php Jika anda ingin mencipta direktori dengan kebenaran baca dan tulis, sebaiknya gunakan kod berikut Jangan gunakan secara langsung fungsi mkdir untuk menentukan kebenaran. Elakkan pengaruh sistem umask
mkdir('./xw/'); chmod('./xw/',0777);
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menukar kebenaran dalam php mkdir. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!