file_get_contents不会写入日志文件

时间:2015-02-17 12:49:06

标签: php

我正在尝试使用表单输入数据将内容写入日志文件。这似乎不适用于使用php版本5.3.14的服务器,但是当我将相同的代码放在使用5.3.27的服务器上时。有没有人知道如何解决这个问题?

以下是我用于表单操作的代码。 incoming.log是我尝试写入的文件,位于服务器上的文件夹路径live / lms中。请注意,我没有收到任何错误。

<?php

$system_path = '/live/lms/';
$fh = fopen($system_path . "incoming.log", "a");
fwrite($fh, "\nReceived:\n" . date("Y-m-d H:i:s") . "\n" . file_get_contents("php://input"));

fclose($fh);
?>

1 个答案:

答案 0 :(得分:0)

不完全是答案,但建议:
您应该添加更多错误处理...并以某种方式构建脚本,以便可以添加更多错误处理。
对于初学者(正在进行中):

<?php
$system_path = '/live/lms/';
$fhSource = fopen('php://input', 'rb');
if (!$fhSource) {
    trigger_error('fopen input: '. print_r(error_get_last(), true), E_USER_ERROR );
}

$fhTarget = fopen($system_path . "incoming.log", 'a');
if (!$fhTarget) {
    trigger_error('fopen output: '. print_r(error_get_last(), true), E_USER_ERROR );
}

$cb = stream_copy_to_stream($fhSource, $fhTarget);

var_dump($cb);

fclose($fhSource);
fclose($fhTarget);