PHP stream_context_create()函数的使用示例
stream_context_create()函数是用来 创建打开文件的上下文件选项 ,用于fopen(),file_get_contents()等过程的超时设置、代理服务器、请求方式、头信息设置的特殊过程。
比如说,上篇php教程中gd库实现下载网页所有图片中,第10行:
利用了stream_context_create()设置代理服务器:
//设置代理服务器
$opts = array('http'=>array('request_fulluri'=>true));
$context = stream_context_create($opts);
$content = file_get_contents($url,false,$context);
利用了stream_context_create()设置超时时间:
$opts = array(
'http'=>array(
'method'=>"GET",
'timeout'=>60,
)
);
$context = stream_context_create($opts);
$html =file_get_contents('http://www.jb51.net', false, $context);
相关推荐
-
PHP stream_context_create()作用和用法分析
作用:创建并返回一个文本数据流并应用各种选项,可用于fopen(),file_get_contents()等过程的超时设置.代理服务器.请求方式.头信息设置的特殊过程. 函数原型:resource stream_context_create ([ array $options [, array $params ]] ) 用法 例子一: 复制代码 代码如下: <?php $opts = array( 'http-->array( 'method'=>"GET", 'he
-
使用PHP Socket 编程模拟Http post和get请求
这里给大家分享一段使用PHP Socket 编程模拟Http post和get请求的代码,非常的实用,结尾部分我们再讨论下php模拟http请求的几种方法. 复制代码 代码如下: <?php /** * 使用PHP Socket 编程模拟Http post和get请求 * @author koma */ class Http{ private $sp = "\r\n"; //这里必须要写成双引号 private $protocol = 'HTTP/1.1';
-
php中突破基于HTTP_REFERER的防盗链措施(stream_context_create)
那么如果考虑突破防盗链的措施,就需要考虑在 HTTP_REFERER 上面做手脚了.PHP 脚本中对应的变量是 $_SERVER['HTTP_REFERER'] ,它存储了 HTTP_REFERER 的值. 由于直接访问目标 URL 资源已经被上述防盗链的措施给屏蔽,所以我们需要个类似网关的玩意去获取.说白了就是编写已经包装过的 HTTP 头的 PHP 脚本. 下面是简单的函数实现: 复制代码 代码如下: function getRemoteFile($url, $refer = '') { $
-
利用PHP fsockopen 模拟POST/GET传送数据的方法
使用php可以模拟 post 和 get 传送数据到别的网页或站点 $arr=array( 'user'=>'test', 'password'=>'' ); sock_get($post_url,$arr); sock_post($post_url,$arr); //fsocket模拟get提交 function sock_get($url,$query=array()){ $query_str = http_build_query($query); $<span id="_
-
PHP使用stream_context_create()模拟POST/GET请求的方法
本文实例讲述了PHP使用stream_context_create()模拟POST/GET请求的方法.分享给大家供大家参考,具体如下: 有时候,我们需要在服务器端模拟 POST/GET 等请求,也就是在 PHP 程序中去实现模拟,改怎么做到呢?或者说,在 PHP 程序里,给你一个数组,如何将这个数组 POST/GET 到另外一个地址呢?当然,使用 CURL 很容易办到,那么如果不使用 CURL 库,又该怎么办呢?其实,在 PHP 里已经有相关的函数实现了,这个函数就是接下来要讲的 stream_
-
php自定义类fsocket模拟post或get请求的方法
本文实例讲述了php自定义类fsocket模拟post或get请求的方法.分享给大家供大家参考.具体如下: zsocket.class.php文件如下: <?php class ZSocket { /* * Init */ private function _fsockopen($host, $port, &$errno, &$errstr, $timeout){ $ip = @gethostbyname($host); $s = @socket_create(AF_INET, SO
-
PHP CURL模拟GET及POST函数代码
复制代码 代码如下: <?php function vcurl($url, $post = '', $cookie = '', $cookiejar = '', $referer = ''){ $tmpInfo = ''; $cookiepath = getcwd().'./'.$cookiejar; $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_USERAGENT,
-
php中用socket模拟http中post或者get提交数据的示例代码
废话不多说.直接上代码:sock_post.php: 复制代码 代码如下: <?phpfunction sock_post($url, $data='') { $url = parse_url($url); $url['scheme'] || $url['scheme'] = 'http'; $url['host'] || $url['host'] = $_SERVER['HTTP_HOST']; $url['path'][0] != '/' && $url['path']
-
php 模拟POST|GET操作实现代码
最近开发social game,发现使用这个东西还是比较平凡,这里做个总结,一来为自己留点记忆,另外希望对大家有帮助. 首先来看看需求,如果我们开发facebook上social game,需要调用它的接口来获得用户在facebook上的好友信息.这个时候我们就要访问facebook提供的一个地址呢,当然你在访问他的时候,他需要对你的访问做验证,防止非法请求.这个时候就得向其post|get一些参数. 如下面的地址: 复制代码 代码如下: $url_with_get= "http://api.f
-
PHP stream_context_create()函数的使用示例
stream_context_create()函数是用来 创建打开文件的上下文件选项 ,用于fopen(),file_get_contents()等过程的超时设置.代理服务器.请求方式.头信息设置的特殊过程. 比如说,上篇php教程中gd库实现下载网页所有图片中,第10行: 利用了stream_context_create()设置代理服务器: 复制代码 代码如下: //设置代理服务器 $opts = array('http'=>array('request_fulluri'=>true));
-
C++中const用于函数重载的示例代码
常成员函数和非常成员函数之间的重载 首先先回忆一下常成员函数 声明:<类型标志符>函数名(参数表)const: 说明: (1)const是函数类型的一部分,在实现部分也要带该关键字. (2)const关键字可以用于对重载函数的区分. (3)常成员函数不能更新类的成员变量,也不能调用该类中没有用const修饰的成员函数,只能调用常成员函数. (4)非常量对象也可以调用常成员函数,但是如果有重载的非常成员函数则会调用非常成员函数. 重载看例子: #include<iostream> u
-
PHP错误处理函数register_shutdown_function使用示例
当程序在线上运行时,如果遇到BUG,想不在前端输出错误信息,同时能及时邮件通知开发者,register_shutdown_function函数就可以派上用场了. 注册一个会在脚本执行完成或者 exit() 后被调用的函数. 可以多次调用 register_shutdown_function() ,这些被注册的回调会按照他们注册时的顺序被依次调用. 如果你在注册的方法内部调用 exit(), 那么所有处理会被中止,并且其他注册的中止回调也不会再被调用. register_shutdown_func
-
Python中join函数简单代码示例
本文简述的是string.join(words[, sep]),它的功能是把字符串或者列表,元组等的元素给拼接起来,返回一个字符串,和split()函数与正好相反,看下面的代码理解. 首先展示下结果吧! 代码分享: a=["豫","N","C8","C89"] b=("豫","N","C8","C89") c="zhang" a
-
PHP日期和时间函数的使用示例详解
(1)查看日期函数拓展 phpinfo() <?php phpinfo(); 打开上述页面之后,可以看到以下,证明已经安装日期拓展 浏览器输入php.net访问php的文档 (2)设置时区 方式一:修改配置文件php.ini D:\ITSoft\wamp64\bin\php\php7.0.10\php.ini [Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezon
-
Python:__eq_和__str__函数的使用示例
一.__eq__方法 在我们定义一个类的时候,常常想对一个类所实例化出来的两个对象进行判断这两个对象是否是完全相同的.一般情况下,我们认为如果同一个类实例化出来的两个对象的属性全都是一样的话,那么这两个对象是相同的.但是如果我们直接用"=="来判断这两个对象知否相等,那么结果一定是不相等的,因为这两个对象的地址一定不同,它们在内存当中的不同区域,比如我们有代码: class Item: def __init__(self, name, weight): self.name=name s
-
express异步函数异常捕获示例详解
在express中时使用 Async/await 编写异步代码时,每个 async 函数都要包裹在try/catch中,代码量多了看着冗余不优雅,express又不像koa的异步机制可以订阅全局的error事件,为了解决这个问题,需要写个捕获异步函数异常的中间件. uncaughtException 开始能想到的肯定是try/catch了,但是也想过能否使用nodejs提供的uncaughtException事件,在全局捕获异常,例如下面的代码: process.on("uncaughtExce
-
python之随机数函数的实现示例
前言 这是俺写的第一篇关于python的博客,分享一下我所整合的python中的随机数函数,就当作是自己的一个笔记,也可以供像我一样的python入门新手小白参考学习.希望可以记录下自己的学习过程. 一.random() 生成一个(0,1)指定范围内的随机浮点数 运行结果如下: 二.uniform(x,y) 生成一个指定范围([min(x,y) max(x,y)])内的随机浮点数 运行结果如下: 三.randint() 生成一个指定范围([x,y])内的整数 运行结果如下: 四.randrang
-
uni-app使用微信小程序云函数的步骤示例
创建云函数目录 首先,我们需要在uni-app项目文件夹下,创建一个云函数目录,路径随意,我这里是functions.然后先随便在里面放一些文件,这里以new_file.css为例.(放文件的原因是:确保编译成小程序后cloudfunctions文件夹存在.如果该文件夹下没有文件,默认是不会在微信小程序开发平台中显示该文件夹的.) 修改manifest.json 在uni-app根目录下,修改manifest.json中的微信小程序项,结构如下 "mp-weixin" : { /* 小
-
Python:__eq__和__str__函数的使用示例
一.__eq__方法 在我们定义一个类的时候,常常想对一个类所实例化出来的两个对象进行判断这两个对象是否是完全相同的.一般情况下,我们认为如果同一个类实例化出来的两个对象的属性全都是一样的话,那么这两个对象是相同的.但是如果我们直接用"=="来判断这两个对象知否相等,那么结果一定是不相等的,因为这两个对象的地址一定不同,它们在内存当中的不同区域,比如我们有代码: class Item: def __init__(self, name, weight): self.name=name s
随机推荐
- 动态表格Table类的实现
- Redis正确使用的十个技巧
- 基于jquery实现百度新闻导航菜单滑动动画
- Javascript中判断一个值是否为undefined的方法详解
- linux系统使用python监测网络接口获取网络的输入输出
- 简单谈谈C++ 头文件系列之(bitset)
- iOS图片拉伸的4种方法
- Asp.Net程序目录下文件夹或文件操作导致Session失效的解决方案
- DOM基础教程之使用DOM控制表单
- 纯js实现瀑布流布局及ajax动态新增数据
- php读取txt文件组成SQL并插入数据库的代码(原创自Zjmainstay)
- PHP实现网上点歌(二)
- 雷客图ASP站长安全助手的ASP木马查找功能
- jsp获取action传来的session和session清空以及判断
- javascript使用数组的push方法完成快速排序
- Svg.js实例教程及使用手册详解(一)
- JS库之Particles.js中文开发手册及参数详解
- Java BufferedWriter BufferedReader 源码分析
- 计算文本域剩佘长度的js代码
- iOS 中使用tableView实现右滑显示选择功能