PHP响应post请求上传文件的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP响应post请求上传文件的方法。分享给大家供大家参考,具体如下:

function send_file($url, $post = '', $file = '') {
  $eol = "\r\n";
  $mime_boundary = md5 ( time () );
  $data = '';
  $confirmation = '';
  date_default_timezone_set ( "Asia/Shanghai" );
  $time = date ( "Y-m-d H:i:s " );
  $post ["filename"] = $file [filename];
  foreach ( $post as $key => $value ) {
    $data .= '--' . $mime_boundary . $eol;
    $data .= 'Content-Disposition: form-data; ';
    $data .= "name=" . $key . $eol . $eol;
    $data .= $value . $eol;
  }
  $data .= '--' . $mime_boundary . $eol;
  $data .= 'Content-Disposition: form-data; name=' . $file [name] . '; filename=' . $file [filename] . $eol;
  $data .= 'Content-Type: text/plain' . $eol;
  $data .= 'Content-Transfer-Encoding: binary' . $eol . $eol;
  $data .= $file [filedata] . $eol;
  $data .= "--" . $mime_boundary . "--" . $eol . $eol;
  $params = array ('http' => array ('method' => 'POST', 'header' => 'Content-Type: multipart/form-data;boundary=' . $mime_boundary . $eol, 'content' => $data ) );
  $ctx = stream_context_create ( $params );
  $response = file_get_contents ( $url, FILE_TEXT, $ctx );
  return $response;
}

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php面向对象的方法重载两种版本比较

多个函数用同一个名字,但参数表,即参数的个数或(和)数据类型可以不同,调用的时候,虽然方法名字相同,但根据参数表可以自动调用对应的函数。 PHP4 中仅仅实现了面向对象的部分的、简单的功...

深入讲解PHP的对象注入(Object Injection)

深入讲解PHP的对象注入(Object Injection)

前言 虽然这篇文章叫做PHP对象注入,但是本质上还是和PHP的序列化的不正确使用有关。如果你阅读了PHP中的SESSION反序列化机制对序列化就会有一个大致的认识。PHP对象注入其实本质...

php实现首页链接查询 友情链接检查的代码

复制代码 代码如下:<?php /* * 网站首页超链接反查 友情链接查询 外链查询 * web技术爱好者 lost63.com原创 QQ:35501547 * 转载请注明出处 *...

php如何控制用户对图片的访问 PHP禁止图片盗链

把images目录设置成不充许http访问(把图片目录的:读取、目录浏览 两个权限去掉)。 用一个PHP文件,直接用file函数读取这个图片。在这个PHP文件里进行权限控制。 apach...

PHP实现自动识别原编码并对字符串进行编码转换的方法

本文实例讲述了PHP实现自动识别原编码并对字符串进行编码转换的方法。分享给大家供大家参考,具体如下: /** * 对数据进行编码转换 * @param array/string...