gpt4 book ai didi

php - 使用 PHP、JavaScript 解析位于另一台服务器上的 CSV

转载 作者:行者123 更新时间:2023-11-30 07:29:04 27 4
gpt4 key购买 nike

我想解析位于另一台服务器 (Yahoo Finance) 上的动态生成的 CSV 文件,但据我所知,您无法使用 XMLHTTPRequest 访问另一台服务器上的内容,至少不能以 CSV 格式访问。

我已经想到了这个问题的解决方案,我想知道这是否是“正确”的方法或最佳实践,因为我对开发还比较陌生。这是我使用 PHP 想出的:

<?php
$symbol = $_GET["s"];

$path = "http://download.finance.yahoo.com/d/quotes.csv?s=" . $symbol . "&f=sl1d1t1c1ohgv&e=.csv";
$yahooquote = fopen($path, "r");

while(!feof($yahooquote))
{
$line = fgets($yahooquote, 1000);
echo $line . "<br />";
}

fclose($yahooquote);
?>

这将返回一个包含 CSV 文件行的 html 文件,然后我可以使用 JavaScript/jQuery XMLHTTPRequest 在客户端解析它。

这是最好的方法吗?你有什么想法/建议吗?请记住,这必须快速,因为它必须每 10 秒运行一次以更新 +100 个股票报价。提前致谢。

最佳答案

问题在于它会被您网站的多个用户一遍又一遍地运行。

如果您想要速度并降低带宽和性能,那么您应该执行以下操作:

创建一个由 cron 每 X 秒私下执行的脚本,它从 yahoo 获取 csv 数据并将其存储在本地服务器上。

一旦解决了这个问题,那么当您的用户通过 ajax 检查时,您可以只向他们提供本地副本。

所有用户将共享相同的缓存文件,并且您每十秒只运行一次,它也将由另一个实例处理,因此用户将看到更快的响应,您可能还想阅读有关 file locking 的信息

您可能还想在 PHP 端使用 cURL

关于php - 使用 PHP、JavaScript 解析位于另一台服务器上的 CSV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4528165/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com