0
我知道这是一个重复的问题,但我已经尝试了一切。Fopen没有创建新文件
因此,这里是我的代码:
<?php
$link = $_GET['link'];
$urlparse = parse_url($link);
$filename = $urlparse['host'] . ".txt";
$dlink = "../get/" . $filename;
if(isset($link)){
$source = file_get_contents($link);
$file = fopen($dlink,"w");
$string = htmlspecialchars($source);
fwrite($string,$file);
fclose($file);
chmod($dlink,0777);
}
?>
**我删除代码
同样的一些不必要的部分,我已经检查在php.ini中允许的fopen,我已检查PHP文件的权限。 会发生什么情况是代码在没有警告或错误的情况下运行,但它不会创建新的文本文件。
检查以确保您的文件路径正确。 – Jordan 2013-03-21 21:44:39
代码在如此多的层次上是错误的 - 首先,isset($ link)'将始终为真,因为您将它设置在第一行(空字符串也是一个值!)。您没有检查权限,或者文件确实打开(取决于PHP设置,您可能不会收到上述任何错误/警告)。执行所有这些,你会看到相关的错误。 – hexblot 2013-03-21 21:45:42
根据文档tphp会尝试创建它。在你想要文件的目录上检查你的权限。 – Daniel 2013-03-21 21:46:04