[PHP-users 12700] Re: mkdir でつくるディレクトリに sticky bitをたてるには?

森下 php-users@php.gr.jp
Tue, 21 Jan 2003 14:08:09 +0900


もりしたです。

On Tue, 21 Jan 2003 13:58:27 +0900
"Y.Watanabe" <yuw@msj.biglobe.ne.jp> wrote:
> mkdirでディレクトリを作成しるとき、
> そのディレクトリにsticky bitを立てるにはどうしたらよいのでしょう?
> 要は、
>   drwxrwxrwt
> というパーミションのディレクトリを作りたいのです。
> 
> <?php
> umask(0);
> mkdir ("/tmp/test",1777);
> ?>
> 
> でやると、
>   d-wxrw---x  
> というパーミションのディレクトリができてしまうようです。
> 
> umaskの値とのかねあいがイマイチつかめず・・・? ^^;)

umaskの兼ね合いと言うより与える数値が問題だと思います。
mkdir に与えるパーミッションは8進数ですから、先頭に
0を追加してみてください。つまり

mkdir("/tmp/test",01777);

のように
-----
NTT情報流通プラットフォーム研究所(PF研 情ビP ビシG)
次世代ビジネスネットワーキングPネットワーキングシステムG
森下幸治 MAIL morishita.kouji@lab.ntt.co.jp