Php fwrite()函数不工作

Php fwrite()函数不工作,php,Php,这是我的代码: <?php $path = 'logs/' . date("Y:m:d") . '.txt'; $get = $_POST['data']; // I know this is insecure, don't worry $file = fopen($path, 'w') or die("Something is wrong with your file permissions, please obtain the nessecary rights!"); fwrite(

这是我的代码:

<?php
$path = 'logs/' . date("Y:m:d") . '.txt';

$get = $_POST['data']; // I know this is insecure, don't worry
$file = fopen($path, 'w') or die("Something is wrong with your file permissions, please obtain the nessecary rights!");
fwrite($file, $get) or die('error writing to file');    
?>

由于您的文件名的名称如下所示,它将不起作用:

$path = 'logs/' . date("Y:m:d") . '.txt';
您会注意到,生成的路径类似于:
logs/2016:12:18.txt
,这意味着您的
.txt
文件名是
2016:12:18
,它不是有效的名称,因为文件名不能包含冒号(

请注意;命名文件时不能使用以下字符:

  • <(少于)
  • >(大于)
  • :(冒号)
  • “(双引号)
  • /(正斜杠)
  • \(反斜杠)
  • |(垂直杆或管道)
  • ?(问号)
  • *(星号)
…多读点书

您应该修改为可接受的文件名,以便使其正常工作

下面是一个使用连字符(
-
)作为分隔符的示例:

$path = 'logs/' . date("Y-m-d") . '.txt'; // Expected result: logs/2016-12-18.txt

由于您的文件名的名称如下所示,因此无法使用:

$path = 'logs/' . date("Y:m:d") . '.txt';
您会注意到,生成的路径类似于:
logs/2016:12:18.txt
,这意味着您的
.txt
文件名是
2016:12:18
,它不是有效的名称,因为文件名不能包含冒号(

请注意;命名文件时不能使用以下字符:

  • <(少于)
  • >(大于)
  • :(冒号)
  • “(双引号)
  • /(正斜杠)
  • \(反斜杠)
  • |(垂直杆或管道)
  • ??(问号)
  • *(星号)
。。。多读多读

您应该修改为可接受的文件名,以便使其正常工作

下面是一个使用连字符(
-
)作为分隔符的示例:

$path = 'logs/' . date("Y-m-d") . '.txt'; // Expected result: logs/2016-12-18.txt

可能是因为
不是文件名中的有效字符可能是因为
不是文件名中的有效字符您可以在非windows系统上使用,对吗?实际上,文件创建得很好。问题是我忘了我需要使用POST请求。哎呀。我会接受这个答案。@David:你可能会发现这篇文章也很有帮助。你可以在非windows系统上使用,对吗?实际上,文件创建得很好。问题是我忘了我需要使用POST请求。哎呀。我会接受这个答案。@David:你们可能会发现这篇文章也很有帮助。