【发布时间】:2018-02-26 00:35:01
【问题描述】:
我想将 price[0] 设置为 cookie,但它似乎将 $ln 设置为 cookie,因为无论我将 $price[0] 还是 $ln 作为参数,它都显示给我变化相同的输出。 $price[0] 是一个浮点值。
代码如下:
function getPrice($url){
$str = file_get_contents($url);
$lines = explode("\n",$str);
foreach ($lines as $ln) {
$target = 'class="text-large2" data-currency-value';
if(strstr($ln,$target)){
$regex = "/(.*?)<\/span/";
preg_match($regex, $ln, $price);
setcookie("price",$price[0],0,"/");
break;
}
}
}
代码说明: 我得到一个网站的源代码,搜索包含 $target 的特定行,在这一行中,我在 preg_match() 的帮助下搜索价格。如前所述,我想将第一个结果设置为 cookie。
如果需要,这里是我使用的网址:
$url = "https://coinmarketcap.com/currencies/bitcoin/";
我已经尝试将 price[0] 转换为字符串,但它没有帮助,我在 AJAX 请求上运行此函数,这就是我必须在 setCookie() 中设置路径的原因。
【问题讨论】:
-
' 它以两种变体向我展示了相同的输出' - 你得到什么输出?
-
对不起,我忘记了。我在问题的末尾添加了一张图片
-
在 cookie 中设置值之前打印
$price[0] -
你的意思是 echo 吗?它打印出正确的预期值。