douya7309 2011-12-28 20:14
浏览 818
已采纳

fopen创建文件,但如何更改权限?

I am creating a new file using fopen.

$filename = 'user_data/10.xml';
$openhandle = fopen($filename, 'w+');

Then I check if the file has been created using: file_exists() function.

The problem is: The file is being created with some owner, probably the folder name, but its not me. Also the permissions of the file is only readable by the owner. And since I am not the owner, I can't read the file, or change the permissions.

But If attempt to change it using:

chown($filename, 'myusername');
chmod($filename, 777);

I tried changing the file owner and permissions using the Terminal using sudo. That worked properly. So I also tried using the functions above with shell_exec() so it runs in root.

But had no luck.

Although, I don't have much experience with file permission numbers, the chown command is also not working.

So how should I change the owner and permissions of the file so i'm the owner and its readable and writable by my other PHP scripts?

  • 写回答

1条回答

  • douyang2530 2011-12-28 20:21
    关注

    You should be able to chmod it using only the following line:

    chmod($filename, 0777);
    

    Note the 0 before the 777.

    Also do not change the ownership before it has been chmod'ed

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大