7

PHP 5.2.14を使用すると、これが起こります

[user@VE213 public_html]$ php -r "mkdir('directory', 0777);"
[user@VE213 public_html]$ ls -lt
drwxrwxr-x  2 rankranger rankranger 4096 Dec  8 17:28 directory

[user@VE213 public_html]$ php -r "chmod('directory', 0777);"
[user@VE213 public_html]$ ls -lt
drwxrwxrwx  2 rankranger rankranger 4096 Dec  8 17:28 directory

PHP バグ リストに関連するバグが見つかりませんでしたか?

4

3 に答える 3

18
$old = umask(0);
mkdir($dir,0777);
umask($old);

これを読んでください、 http://php.net/manual/en/function.mkdir.php

さらに、新しいディレクトリを作成するトップディレクトリを確認します。

例)

pwd / data / log

$dir="/data/log/query";
$old = umask(0); 
mkdir($dir,0777); 
umask($old); 

/ data/logは0777でなければなりません。

于 2012-08-09T02:43:14.167 に答える
6

これはバグではありません。http://php.net/umaskを参照してください- おそらく 0002 の umask を持っていますyourmode & ~umask

于 2010-12-08T17:33:00.490 に答える
5

文書化されたとおりに動作します。mkdir は umask を尊重しますが、chmod は尊重しません。

于 2010-12-08T17:32:26.327 に答える