19.3. Changing File Permissions or Ownership
Problem
You want to change a file’s permissions or ownership; for example, you want to prevent other users from being able to look at a file of sensitive data.
Solution
Use chmod( )
to change the permissions of a file:
chmod('/home/user/secrets.txt',0400);
Use chown( )
to change a file’s owner and
chgrp( )
to change a file’s
group:
chown('/tmp/myfile.txt','sklar'); // specify user by name chgrp('/home/sklar/schedule.txt','soccer'); // specify group by name chown('/tmp/myfile.txt',5001); // specify user by uid chgrp('/home/sklar/schedule.txt',102); // specify group by gid
Discussion
The permissions passed to chmod( )
must be
specified as an octal number.
The superuser can change the permissions, owner, and group of any file. Other users are restricted. They can change only the permissions and group of files that they own, and can’t change the owner at all. Nonsuperusers can also change only the group of a file to a group they belong to.
The functions chmod( )
, chgrp( )
, and chown( )
don’t
work on Windows.
See Also
Documentation on chmod( )
at
http://www.php.net/chmod, chown( )
at http://www.php.net/chown, and
chgrp( )
at
http://www.php.net/chgrp.
Get PHP Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.