2013-04-05 48 views
0

我已经尝试了这个问题,并为此[function.file-GET-内容]:未能打开流:无效的参数

Warning: fopen() [function.fopen]: Filename cannot be empty 

解决 ,为此还

Warning: fclose() expects parameter 1 to be resource, 

像反斜杠和正斜杠问题

但仍然面临问题 请帮我.. 我想改变文件的内容服务器与我的文件..

$frserver = file_get_contents("http:\\ip is here\\cdr\\settings.txt"); 

但同样的问题.. (我有一个斜线和正斜杠也试过)之后得到这个文件,我切一个字符

$result = substr($frserver, 12, 1); 

返回我一个整数值

现在我做同样的程序与本地计算机

$frlocal = file_get_contents("c:\\settings.txt", "r"); 
$result1 = substr($frlocal, 12, 1); 

现在比较两个字符..如果不是相同,则不会发生问题...使用本地文件内容写入服务器文件。

if($result == $result1){ 
    echo "No file to Update"; 
} 
else{ 
$fh = fopen($frserver, "w"); 
fwrite($fh, $frlocal); 
    fclose($fh); 
    echo "file updated"; 

}

请看看。

+0

这是非常混乱。你想做什么?你为什么打开一个名字包含在你从互联网上获取的另一个文件中? – jedwards 2013-04-05 19:49:39

+0

'fopen()'期待'$ frserver'是一个文件名,而不是数据块(也不是空的)。 'fclose()'失败,因为'fopen()'失败。 'file_get_contents()'有一个“r”作为第二个参数,它不应该(看起来像它曾经是一个'fopen()'调用?)。 – Wiseguy 2013-04-05 19:50:26

+0

我在两个地方都有同样的文件..比如settings.txt在远程服务器和我的电脑上,所以我要匹配他们两个......你告诉fopen()期待文件名,但我不下载任何文件...我刚刚阅读它,并给出了该路径.. – 2013-04-05 19:58:40

回答

2
$frserver = file_get_contents("http:\\ip is here\\cdr\\settings.txt"); 

更换所有双反斜线\\ 1个斜线/

$frserver = file_get_contents("http://ip is here/cdr/settings.txt"); 

网页的URL使用斜线不是反斜杠。

在这里,你必须提供文件路径...

$fh = fopen("http://ip is here/cdr/settings.txt", "w"); 
+0

感谢您的帮助..但仍然我面临fopen,fwrite和fclose警告..请帮助他们 – 2013-04-05 19:54:27

+0

[function.fopen]:未能打开流:fopen和警告无效的参数:fwrite()期望参数1是fwrite的资源和警告:fclose ()期望参数1是fclose的资源 – 2013-04-05 19:55:35

+0

@wiseguy yup ...它是一个文件路径..我已阅读... – 2013-04-05 20:01:22

相关问题