是否有 PHP 命令可以更改符号链接文件的文件访问权限/所有者,而不是符号链接指向的对象的权限?
从外壳我可以
$ mkdir adir
$ ln -s adir alink
$ chmod 0700 alink -- changes permissions of directory adir
$ chmod -h 0700 alink -- changes permissions of file alink
Run Code Online (Sandbox Code Playgroud)
但我不知道如何在 PHP 中完成最后一个,除了调用 shell,例如使用exec().
PHP不支持更改符号链接的权限(没有lchmod的功能等lstat和lchown功能)。
Linux也不支持它:
POSIX 不需要 lchmod,Linux 不提供它。在缺少 lchmod 的平台上,符号链接始终具有相同的默认权限,因此无法更改权限不是问题,因为您要复制的源与新创建的符号链接目标具有相同的权限 (0777)。
在支持 lchmod 的 BSD 上,只有 0555 位重要(如果当前用户无法读取符号链接,则 readlink() 失败,如果当前用户无法搜索,则所有其他系统调用都会失败并显示 ENOENT,因为无法遵循符号链接/ 在文件名解析期间执行符号链接),即使如此,也只有在使用 symperm 选项安装的文件系统上。
| 归档时间: |
|
| 查看次数: |
1712 次 |
| 最近记录: |