文件(文件描述符3)存在,但无法通过fopen php打开它

时间:2018-07-04 09:39:48

标签: php linux fopen file-descriptor

我正在尝试通过PHP从文件描述符3获取流

问题是尽管文件存在但我仍无法打开文件

这是我的代码:

<?php

$file = fopen('/proc/12916/fd/3' ,'r');
if($file == NULL) print_r("NULL");

?>

我手动获取文件名,并将其传递给fopen函数。 执行后,我收到此消息:

  

PHP警告:fopen(/ proc / 12916 / fd / 3):无法打开流:否这样   第4行的/root/test.php中的文件或目录

尽管该文件存在

[root@localhost ~]# ll /proc/12916/fd/3 
lr-x------ 1 root asterisk 64 7月  4 18:15 /proc/12916/fd/3 -> pipe:[90140090]

关键是在现有的官方php库中,像我一样做同样的事情,也使用fopen打开fd3。它失败了。 我在这里很困惑。 任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

您确定您具有读取文件的正确访问权限吗? 似乎只有“ root”用户拥有权限。

也许您应该在文件上进行chmod 644