这是我不明白的事情:
一个文件的权限为 0644,如果我使用 php 的 fileperms() 函数,如果我创建一个 var_dump(),则返回 16804 作为整数。两者之间的关系是什么/在哪里,以及我如何将一个(比如说 0755)转换为 fileperms() 将为 0755 返回的任何内容。
谢谢
放*
这是我不明白的事情:
一个文件的权限为 0644,如果我使用 php 的 fileperms() 函数,如果我创建一个 var_dump(),则返回 16804 作为整数。两者之间的关系是什么/在哪里,以及我如何将一个(比如说 0755)转换为 fileperms() 将为 0755 返回的任何内容。
谢谢
放*
16804 是八进制数40644 的十进制表示法。请查看PHP 手册的第二个示例以了解这些值的含义。
40644
提取:
4
- 文件是一个目录0
- 填充以获得第4
5 个位置的第一个6
- 所有者可读写4
- 仅对组可读4
- 仅对世界可读。PHP 将带有前导零的数字识别为八进制数。如果您需要将包含0755
或的字符串转换755
为十进制数,请使用octdec()
. 反向函数(十进制到八进制)是decoct()
.
如果您需要更改文件的文件权限,请使用chmod()
. 为此,您需要成为文件的所有者,否则您会收到Permission denied错误。