PHP file_put_contents返回值,但未写入文件

时间:2018-09-17 09:56:18

标签: php

我有一个PHP文件,并且我已经使用file_put_contents函数在文件中写入字符串:

<?php

$res=file_put_contents("/tmp/log.txt", print_r('test', TRUE), FILE_APPEND);

print_r($res);

$check = file_exists("/tmp/log.txt");

print_r($check);

?>

当我从浏览器中调用我的PHP文件时,$res的结果为3,它表明该字符串写在log.txt目录中的tmp中。 $check的结果为1,它表明已创建文件,但是当我检查tmp目录时,log.txt不存在。我还检查了PHP错误日志文件,但未在其中记录任何错误。

当我将服务器中的PHP文件称为php /var/www/html/file.php时,结果为3 1并且文件存在于tmp中。

3 个答案:

答案 0 :(得分:1)

尝试一下$_SERVER['DOCUMENT_ROOT']

<?php

$res=file_put_contents($_SERVER['DOCUMENT_ROOT']."/tmp/log.txt", print_r('test', TRUE), FILE_APPEND);

print_r($res);

$check = file_exists($_SERVER['DOCUMENT_ROOT']."/tmp/log.txt");

print_r($check);

?>

答案 1 :(得分:0)

以 root 身份登录(sudo su 或 so)并执行以下操作: find / -name "log.txt"

您会在某个文件夹中找到此文件,例如: /tmp/systemd-private-d0606967f7ad46d88c2298c8ce9ae2b8-php-fpm.service-uVTqqf /tmp/log.txt

你会在那里找到日志。

答案 2 :(得分:-1)

使用目录的完整路径,而不是绝对路径。

document.querySelector('.button').addEventListener('click', e => { fullpage_api.moveTo(3) var instance = fullpage_api.getActiveSection().item.querySelector('.fp-scrollable').fp_iscrollInstance; instance.scrollTo(0, -1050, 1000); setTimeout(function () { instance.refresh(); }, 1000 + 150); });