2014-05-01 21 views
-1

我有这个代码在Safari的问题(在Firefox和Chrome它的工作原理)Safari浏览器加载的PHP脚本两次

当我加载页面,在该文件中创建行被复制。 如果您在不关闭浏览器选项卡的情况下重新加载页面,则脚本运行良好。

I attach a video to better understand

$fileName = 'test.txt'; 
$d = date("d/m/Y - H:i:s"); 
echo $d . "<br>\n"; 
echo '------------------------------------------' . "<br>\n"; 

file_put_contents($fileName, $d . PHP_EOL, FILE_APPEND); 

$lines = file($fileName); 
foreach($lines as $lineNum => $line) { 
    echo "Line #" . ++$lineNum . " : " . $line . "<br />\n"; 
} 
+0

在Safari中运行之前,您确定文件是干净的吗? –

+0

是的,该文件是在第一次运行脚本时创建的,然后将数据添加到队列中的现有数据。 但是,即使文件存在,也会在脚本的第一次运行中添加两行。 – Samuele

+0

Safari在输入URL时似乎执行脚本。 –

回答

0

从苹果:

工程已确定基于以下 按预期这个问题表现:

这是因为我们预先加载排名靠前的背景当它 似乎可能会从完成列表中选择。通过 “不要预加载背景中的顶部命中”复选框,可以从Safari的隐私偏好设置窗格中禁用此 行为。

+0

我从Safari偏好设置中禁用了预加载,并且该脚本起作用。 非常感谢你的提示。 – Samuele

相关问题