2017-03-05 112 views
0

我有一个接收.txt文件输入的表单。在我的PHP代码,我检索表格文件,并尝试将其保存在服务器:stream_get_contents()返回一个空字符串

$fp = fopen($_FILES['textFile']['tmp_name'], 'rb'); 
saveFile($fp); 

//saves file to server with a random file name 
function saveFile($file) { 

    $fileName = mktime().".txt"; 

    //creates new file 
    $newFile = fopen("".$fileName, 'w'); 
    $content = stream_get_contents($file); 
    echo "CONTENT ".$content; 
    if($newFile) { 
    fwrite($newFile, $content); 
    fclose($newFile); 
    fclose($file); 
    echo "File saved in server as ".$fileName."."; 
    } else { 
    echo "Failed to write file to server."; 
    } 
} 

我能够保存该文件,但它是空的。

+0

'stream_get_contents'在已打开的流资源上运行,并返回字符串中的剩余内容,以便检查您在哪里打开流。你可以使用'file_get_contents' – gaurav

回答

0

您必须解析表达式中的内容,以便在解析fwrite函数之前返回并解析流内容。要做到这一点,你必须在你的$content变量周围使用一组额外的括号,如“fwrite($newFile, ($content));”等。