提问人:Luis Miguel Molina Betancourt 提问时间:11/13/2023 最后编辑:Luis Miguel Molina Betancourt 更新时间:11/14/2023 访问量:80
在 PHP 中将 IP 地址和时间戳保存到 JSON 文件的问题
Issue with Saving IP Address and Timestamp to JSON File in PHP
问:
我在 PHP 中将 IP 地址和时间戳保存到 JSON 文件中时遇到了问题。下面的代码片段正确地回显了 IP 地址,但似乎没有将其保存到“ips.json”文件中:
$archivo = file_get_contents('ips.json');
$data = json_decode($archivo, true);
if (empty($data)) {
$data = array();
}
$ip = $_SERVER['REMOTE_ADDR'];
echo $ip;
$fecha = new DateTime();
array_push($data, array($ip, $fecha));
file_put_contents("ips.json", json_encode($data));
IP 地址已成功回显,但数据未写入 JSON 文件。我正在使用 file_put_contents 函数以 JSON 格式保存数据。
我已经检查了文件权限,它们似乎是合适的,并且日期保存正确。代码中是否存在可能导致此问题的潜在问题或改进?
文件已正确生成,这是生成的文件,但如果您看到它没有 IP。
[
[
"",
{
"date": "2023-11-12 22:02:01.435430",
"timezone_type": 3,
"timezone": "Europe\/Madrid"
}
]
]
这是我的 Web 服务器的截图,可以看出它捕获了 IP,我连接了 hi 来测试是否保存了某些东西,并且准确地保存了 hi,但没有保存 IP。 我应该补充一点,我的网站托管在带有 Bitnami 的 AWS 服务器上。
我已经尽可能地简化了我的代码,直到我得到以下结果:
$data = file_get_contents('ips.json');
echo "<!-- DATA " . $data . " / " . $_SERVER['REMOTE_ADDR'] . " -->";
file_put_contents("ips.json", $_SERVER['REMOTE_ADDR'] . $data + 1);
它仍然没有保存 ip,它就像计数器一样工作,但 ip 不会保存它。
我感谢任何见解或建议来帮助我解决此问题。谢谢。
答: 暂无答案
评论
$ip
echo $ip
$_SERVER['REMOTE_ADDR']