Open Internet or Unix domain socket connection(打开套接字链接)

Initiates a socket connection to the resource specified by target .

fsockopen() returns a file pointer which may be used together with the other file functions (such as fgets() , fgetss() , fwrite() , fclose() , and feof() ).就是返回一个文件句柄

开启PHP fsockopen这个函数

PHP fsockopen需要 PHP.ini 中 allow_url_fopen 选项开启

例子如下:$fp = fsockopen("www.example.com",

80, $errno, $errstr, 30);

if (!$fp) {

echo "$errstr ($errno)
\n";

} else {

$out = "GET / HTTP/1.1\r\n";

$out .= "Host: www.example.com\r\n";

$out .= "Connection: Close\r\n\r\n";

fwrite($fp, $out);

while (!feof($fp)) {

echo fgets($fp, 128);

}

fclose($fp);

}

处理下载问题时,所用到的方法

function downloadFile($file) {

$host = '********';

$out = "GET $file HTTP/1.0\r\n";

$out .= "Host: $host\r\n";

$out .= "Connection: Close\r\n\r\n";

$fp = fsockopen($host, 80);

fwrite($fp, $out);

$headers = array();

$body = '';

$filenameExt = '';

$isBody = false;

while(true) {

$line = fgets($fp);

if (false === $line) {

break;

}

if ($line == "\r\n") {

$isBody = true;

continue;

}

if ($isBody) {

$body .= $line;

echo strlen($body) . " ... \r";

} else {

if (strpos($line, 'filename')) {

preg_match('!filename="(.+?)\.([\w]+)"!', $line, $filename);

$filenameExt = $filename[2];

}

$headers[] = trim($line);

}

}

fclose($fp);

return array('fileExt' => $filenameExt, 'headers' => $headers, 'body' => $body);

}

php fsockopen函数,PHP fsockopen函数说明:相关推荐

  1. php fsockopen函数,PHP fsockopen函数详解

    PHP fsockopen是一个功能比较强大的函数.我们在这篇文章中将会对这个函数做一个具体的介绍,希望对大家有所帮助.记得以前的B2C网站就是通过这个函数实现前台和订单处理系统的交互. PHP fs ...

  2. php函数fsockopen设置,PHP函数:fsockopen

    fsockopen() - Open Internet or Unix domain socket connection 一.如何禁用fsockopen() 下面是两种常用的禁用fsockopen的方 ...

  3. python函数知识点总结_函数总结_python函数总结_高中函数知识点总结 - 云+社区 - 腾讯云...

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! postgresql窗口函数总结postgresql窗口函数总结 1窗口函数说明 ...

  4. render函数和redirect函数的区别+反向解析

    render函数和redirect函数的区别+反向解析 1.视图函数:一定是要包含两个对象的(render源码里面有HttpResponse对象)   request对象:----->所有的请求 ...

  5. Python day10 global关键字、函数递归、匿名函数、map函数的用法详解

    1.global关键字 引用全局变量,在局部全局变量改变,也会改变,global相当于指针,将地址指向全局变量的name name='littlepage'def littepage():global ...

  6. C++ 笔记(13)— 函数(函数声明、函数定义、函数调用[传值、指针、引用]、函数参数默认值、函数重载)

    每个 C++ 程序都至少有一个函数,即主函数 main() ,所有简单的程序都可以定义其他额外的函数. 1. 函数声明 函数声明告诉编译器函数的名称.返回类型和参数.函数声明包括以下几个部分: ret ...

  7. Go 学习笔记(16)— 函数(02)[函数签名、有名函数、匿名函数、调用匿名函数、匿名函数赋值给变量、匿名函数做回调函数]

    1. 函数签名 函数类型也叫做函数签名,可以使用 fmt.Printf("%T") 格式化参数打印函数类型. package mainimport "fmt"f ...

  8. Go 学习笔记(15)— 函数(01)[函数定义、函数特点、多值返回、实参形参、变长参数,函数作为参数调用]

    1. 函数定义 Go 语言最少有个 main() 函数.函数声明告诉了编译器函数的名称,返回类型和参数. func funcName(parameter_list)(result_list) {fun ...

  9. MySQL 学习笔记(3)— 字符串函数、数值函数、日期时间函数、流程函数、聚集函数以及分组数据

    1. 字符串函数 MySQL 的常用函数包括字符串函数.数值函数.日期时间函数.流程函数等. SELECT ascii("abc"),char(97),concat("h ...

最新文章

  1. html 显示消息数量,html实现消息按钮上的数量角标的实例详解
  2. ajax局部刷新后,如何让局部中的百度分享重新加载
  3. 关于反爬虫,看这一篇就够了 1
  4. c++语言表白超炫图形_青少年编程学习之C语言怎么学?现在知道,将来不亏!...
  5. CSS精灵图合成工具
  6. Docker服务器的图形显示方案
  7. matlab软件moran值,用matlab求moran并作图的具体步骤
  8. jvm内存 大于 xmx_为什么我的JVM访问的内存少于通过-Xmx指定的内存?
  9. 网站页面左右_广州网站优化的技巧是什么?
  10. React开发(178):ant design table基础用法
  11. 存储如何让文件小一点_如何使用Redis接管文件存储
  12. [Linux] vimdiff 快速比较和合并少量文件
  13. Git使用方法(三)-小技巧篇
  14. CentOS6.7 Linux Squid 代理服务器安装配置
  15. 地图制作:Google Earth Pro的下载及功能介绍(详细介绍)(上)
  16. 基于php的校园垃圾分类网站的设计与实现
  17. 论文模型构建的步骤_最全面的财会核心期刊论文写作技巧,核心期刊审稿人带你详解财会论文写作路数...
  18. Java 求阴历(C++ 求阴历方法的转换)
  19. 软件架构设计(一)——软件架构风格
  20. 动态内存的申请和非动态内存的申请_非深户父母买社保就加分!深圳罗湖学位申请规则将调整!快算算你多少分...

热门文章

  1. 免费开源的php源码加密--screw plus
  2. oracle中的分隔函数,Oracle中的split字符串分割函数
  3. Java里的AlertDialog_AlertDialog使用总结
  4. CLOS网络的无阻塞条件
  5. CNN经典网络模型综述及发散思考(LeNet/ AlexNet/VGGNet/GoogLeNet/ResNet)
  6. Apple Watch(手表)与iPhone(iOS App)通信原理
  7. 因为BIOS中Secure boot开启导致的Nvidia驱动无法安装
  8. R语言,nomogram + youden index = 最佳分组grouping的cutoff值! 第一次理解可以用youden index来找nomogram的最佳分组点!先算每个患者的分ROC
  9. 工业相机选型(选择工业相机必须搞懂这11大要素)
  10. Rocky 8.5 搭建本地yum源