php把文件上传到远程服务器上例子
在这里我们利用curl实现把本地服务器的文件通过curl发送请求给远程服务器的php文件接受就实现了上传,还一个是利用ftp来上传方法也是php中的curl操作ftp服务器进行上传。
我这里写的是用curl的代码
本地代码如下:

<?php header("content-type:text/html;charset=utf8"); $curl = curl_init(); $data = array("img"=>"@". dirname(__FILE__)."/img/login.gif"); curl_setopt($curl, CURLOPT_URL, "http://www.demo.com/uploadimg.php"); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); $result = curl_exec($curl); curl_close($curl); echo json_decode($result); ?>

远程服务器接受端代码:

<?php if($_FILES) { $filename = $_FILES["img"]["name"]; $tmpname = $_FILES["img"]["tmp_name"]; if(move_uploaded_file($tmpname, dirname(__FILE__)."/img/".$filename)) { echo json_encode("上传成功"); } else { $data = json_encode($_FILES); echo $data; } } ?>

利用curl不过这是利用ftp

<?php $localfile = "php_homepage.txt"; $fp = fopen ($localfile, "r"); $arr_ip = gethostbyname(www.111cn.net); echo $arr_ip; $ftp = "ftp://".$arr_ip."/public_html/".$localfile; $ch = curl_init(); curl_setopt($ch, CURLOPT_VERBOSE, 1); curl_setopt($ch, CURLOPT_USERPWD, "***:****"); curl_setopt($ch, CURLOPT_URL, $ftp); curl_setopt($ch, CURLOPT_PUT, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_INFILE, $fp); curl_setopt($ch, CURLOPT_INFILESIZE, filesize($localfile)); $http_result = curl_exec($ch); $error = curl_error($ch); echo $error."<br>"; $http_code = curl_getinfo($ch ,CURLINFO_HTTP_CODE);curl_close($ch); fclose($fp); ?>

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: PHP 远程文件包含的介绍和代码防御
- 下一篇: PHP中打开或包含远程文件时要注意的问题