使用url和fopen()在php中传递变量时超时

时间:2013-07-25 20:36:37

标签: php get fopen

我做了很多搜索,但找不到答案。我的问题是我试图调用一个附加了GET变量的链接,它只是挂起并挂起,直到连接超时。当我只是在Web浏览器中调用链接时,它没有问题。

这是fopen()php代码示例:

<?php
$url = "https://www.mysite.com/folder/second_folder/file.php?varA=val1&varB=val2&varC=val3&varD=val4&varE=val5";
$ch = fopen($url, 'r');

if(!$ch){
    echo "could not open!!! $url";
} else {
    echo "Success! ($url)";
}
?>

我可以在没有GET变量的情况下调用file.php。返回没有错误。

注意:我会说file.php带有一个传递的var,做一些函数然后做一个头位置重写。我认为它甚至没有达到连接超时的时候,因为当我遇到问题时,我会在标题位置点之前放入一个“检查点”,它应该给我发电子邮件,而且它不会给我发电子邮件。

再次,如果我在网络浏览器中运行网址就可以了。

那么如果有人能帮助我,会发生什么?我只需要运行URL,就像PHP点击链接一样。我之前使用过fopen但由于某种原因它现在不起作用。此外,cURL也没有这方面的工作。

2 个答案:

答案 0 :(得分:0)

在这种情况下,请尝试将''更改为“”。

我的工作代码是

<?php $handle = fopen("c:\\folder\\resource.txt", "r"); ?>

答案 1 :(得分:0)

我认为你想要使用

$ch = file_get_contents($url);

编辑:cURL选项

// open
$ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
    curl_setopt($ch, CURLOPT_MAXREDIRS, 1);
    curl_setopt($ch, CURLOPT_FORBID_REUSE, 1);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    $page_data = curl_exec($ch);
    $page_info = curl_getinfo($ch); 


// close
curl_close ($ch);