我可以在curl_setopt中使用变量而不是url($ sh,CURLOPT_URL,

时间:2011-05-16 19:02:13

标签: php curl

<?php

$ch = curl_init();
curl_setopt ($ch, CURLOPT_URL, 'http://192.168.0.14:8081/home/');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
$curl_response = curl_exec($ch);
curl_close($ch);

//Change link url

$link = $curl_response;

$linkgo = '/sickbeard_public';
$linkfind = 'href="';
$linkreplace = 'href="' . $linkgo ;

$link = str_replace($linkfind, $linkreplace, $link);


//Change js url
$js = $link;

$jsgo = 'http://192.168.0.14:8081';
$jsfind = 'src="';
$jsreplace = 'src="' . $jsgo ;

$js = str_replace($jsfind, $jsreplace, $js);


//Fix on page link errors
$alink = $js;
$alinkgo = 'http://192.168.0.14:8081/';
$alinkfind = 'a href="/sickbeard_public/';
$alinkreplace = 'a href="' . $alinkgo ;

$alink = str_replace($alinkfind, $alinkreplace, $alink);
_________________

$sh = curl_init();
$url = $alink;
curl_setopt ($sh, CURLOPT_URL, $url);
curl_setopt ($sh, CURLOPT_RETURNTRANSFER, 1);
$curl_res = curl_exec($sh);


echo $curl_res;

?>

我正在尝试拉取网页,然后点击该页面上的链接时,我希望原始网址卷曲。如果我有echo $ alink,代码就可以运行了。而不是线后的东西。但是上面显示的代码没有。点击的网址卷曲不起作用。一直在摆弄它几个小时,但谷歌没有帮助,我不知道现在该做什么。请协助.. 感谢

1 个答案:

答案 0 :(得分:0)

确保“?”之后的所有变量值是“urlencode()”,特别是空格,否则它将无效。