PHP file_put_contents没有保存,但没有显示错误/警告

时间:2011-07-27 00:53:50

标签: php

我正在尝试加载文件,添加一些文本然后保存文件,我有这个:

$css = file_get_contents("unzipped/$folder/style.css");
if(file_put_contents("ADD THIS " . $css, "unzipped/$folder/style.css")){
   echo("All Done!"); 
}

即使'完成了'!被回应的文件内容没有改变。

有什么想法吗? :S

修改

我还想补充一点,如果我回显$css,文件的内容会正确显示

3 个答案:

答案 0 :(得分:12)

您的参数顺序错误。请参阅file_put_contents文档。您更正后的代码:

$css = file_get_contents("unzipped/$folder/style.css");
if(file_put_contents("unzipped/$folder/style.css", "ADD THIS " . $css)){
   echo("All Done!"); 
}

您可能会注意到一个名为“ADD THIS”的文件,其中包含该文件的内容,作为文件名。疯狂命名文件的内容将是unzipped/$folder/style.css解析出来的内容。

答案 1 :(得分:6)

文件的路径是file_put_contents的第一个参数。

$css = file_get_contents("unzipped/$folder/style.css");
if(file_put_contents("unzipped/$folder/style.css", "ADD THIS " . $css)){
   echo("All Done!"); 
}

答案 2 :(得分:0)

当您使用可能返回零作为有效结果的函数时,您应该使用严格类型比较(===)

if(file_put_contents("ADD THIS " . $css, "unzipped/$folder/style.css") === true){
   echo("All Done!"); 
}