0

我已经做了很多搜索,但找不到我的答案。我的问题是我试图调用一个附加了 GET 变量的链接,它只是挂起并挂起,直到连接超时。当我只是在网络浏览器中直接调用该链接时,它可以正常工作,没问题。

这是 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,执行一些功能,然后重写标头位置。我认为当它连接超时时它甚至没有达到这一点,因为当我遇到问题时,我在标题位置点之前放置了一个“检查点”,它应该给我发电子邮件,它不会给我发电子邮件。

同样,如果我在 Web 浏览器中运行 URL,它就可以正常工作。

那么如果有人可以帮助我怎么办?我只需要运行 URL,就好像 PHP 正在单击链接一样。我以前使用过 fopen,但由于某种原因它现在不起作用。cURL 对此也不起作用。

4

2 回答 2

0

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

我的工作代码是

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

于 2013-07-25T20:44:38.470 回答
0

我想你想使用

$ch = file_get_contents($url);

编辑:卷曲选项

// 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);
于 2013-07-25T21:02:51.517 回答