CURLOPT_RETURNTRANSFER
使用PHP curl获取页面内容或提交数据,有时候希望返回的内容作为变量储存,而不是直接输出。这个时候就必需设置curl的CURLOPT_RETURNTRANSFER选项为1或true。
1、curl获取页面内容, 直接输出例子:
<!代码开始>
<?php $url = 'http://baidu.com'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_exec($ch); curl_close($ch); ?>
<!代码结束>
2、curl获取页面内容, 不直接输出例子:
<!代码开始>
<?php $url = 'http://baidu.com'; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); $response = curl_exec($ch); // 已经获取到内容,没有输出到页面上。 curl_close($ch); echo $response; ?>
<!代码结束>
str_replace
拦截替换页面内容的方法:
把字符串 "Hello world!" 中的字符 "world" 替换为 "Shanghai":
<!代码开始>
<?php echo str_replace("world","Shanghai","Hello world!"); ?>
<!代码结束>
PHP str_replace方法,替换字符串定义和用法
str_replace() 函数替换字符串中的一些字符(区分大小写)。
结合演示
<?php $curlobj = curl_init(); // 初始化 curl_setopt($curlobj, CURLOPT_URL, "http://www.baidu.com"); // 设置访问网页的URL curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, true); // 执行之后不直接打印出来 $output = curl_exec($curlobj); // 执行 curl_close($curlobj); // 关闭cURL echo str_replace("百度", "php", $output); ?>
已有 3011 位网友参与,快来吐槽:
发表评论