我正在尝试使用此代码将令牌保存到php文件,但是在2kb之后文件会神秘地清空并丢失所有数据。为什么会这样?我该如何预防?
$fh = fopen('token.txt', 'a+');
fwrite($fh, $access_token . "\n");
fclose($fh);
答案 0 :(得分:0)
您说的这个令牌数据,它来自哪里?你似乎没有更多地附加到文件,而只是写作和写作(我可能是错的),因为我不经常写文件。无论如何如果这些数据在会话或cookie或者变量之类的东西中累积,或者在你拍摄到你拥有的文本文件之前的某种程度上,这可能是那里的一些问题。据我所知,在大多数情况下,会话,cookie和获取都有一个限制,在达到所述限制后,它们会以一种形状或另一种形式断开。所以如果是这样的话,也许如果你的session,cookie,get太大,那么用它做一些操作的操作就是将它视为null,无效,空,无论如何,然后把那个等价物放到你写的文件中。
不幸的是,如果没有为您的整个脚本提供更多上下文,这些令牌从哪里生成到任何运行,发生或继续重新固定到这些令牌以使它们变得越来越大。很难给出一个非常好的答案,可能对你有任何帮助。根据您上面的代码,我看不到真正的限制
此外,这可能是一个Windows问题(权限或其他),或服务器配置问题,或PHP配置问题,许多不同的变量绑定到这个问题,更多,因为它听起来像一个自托管开发堆叠在你自己的机器上。
因此,您可以提供给我们的更多信息,我们在帮助方面做得越好: - )