php另类上传图片的方法(PHP用Socket上传图片)


Posted in PHP onOctober 30, 2013

服务器端:

<?php
set_time_limit(10);
//* 设置不显示任何错误 */
//error_reporting(0);
function varinfo($str) {
echo "<PRe>";
var_dump($str);
echo "<pre>";
}
$commonProtocol = getprotobyname("tcp");
$socket = socket_create(AF_INET, SOCK_STREAM, $commonProtocol);
if ($socket) {
$result = socket_bind($socket, '192.168.3.57', 1337);
if ($result) {
   $result = socket_listen($socket, 5);
   if ($result) {
    echo "监听成功";
   }
}
}else{
echo "监听失败";
}
//$path = "/home/upload/";
$path = "e://web//";
while (true)   {   
$connection = socket_accept($socket);
if($connection){   
   $msg = "telnet succeed!\r\n";
   socket_write($connection, $msg, strlen($msg)); 
     $BufferPond = array();   
     $buffer = '';
     while($flag = socket_recv($connection, $buffer, 1024, 0)){    
          if (false !== strpos($buffer,'filename:')){   
             $filename = substr($buffer,9);
             $filename = $path.$filename;
             $fp = fopen($filename,"wb");
             continue;    
          }    
        fwrite($fp,$buffer);
     }
     fclose($fp);
     socket_close($connection);    
}    
}    
socket_close($socket);   
?>

客户端:
<?php
$errno='001';
$errstr="socket file error";
$fp = fsockopen("192.168.3.57", 1337, $errno, $errstr, 10);
if (!$fp) {    
    echo "$errstr ($errno)<br />\n";    
} else {    
    $str = "filename:socket_file.bmp";    
    fwrite($fp, $str);    $out = file_get_contents('../../iphone3G.bmp');    
   if($out){
    fwrite($fp, $out);    
    fwrite($fp,'over');
   echo "上传成功";
   }
}
fclose($fp);
?>
PHP 相关文章推荐
模仿OSO的论坛(四)
Oct 09 PHP
收集的DedeCMS一些使用经验
Mar 17 PHP
精通php的十大要点(上)
Feb 04 PHP
php 论坛采集程序 模拟登陆,抓取页面 实现代码
Jul 09 PHP
php流量统计功能的实现代码
Sep 29 PHP
php安全开发 添加随机字符串验证,防止伪造跨站请求
Feb 14 PHP
PHP中使用FFMPEG获取视频缩略图和视频总时长实例
May 04 PHP
Laravel中使用自己编写类库的3种方法
Feb 10 PHP
详解WordPress开发中过滤属性以及Sql语句的函数使用
Dec 25 PHP
全新Mac配置PHP开发环境教程
Feb 03 PHP
thinkPHP3.2.3实现阿里大于短信验证的方法
Jun 06 PHP
laravel 执行迁移回滚示例
Oct 23 PHP
使用Curl进行抓取远程内容时url中文编码问题示例探讨
Oct 29 #PHP
is_uploaded_file函数引发的不能上传文件问题
Oct 29 #PHP
单点登录 Ucenter示例分析
Oct 29 #PHP
php中过滤非法字符的具体实现
Oct 29 #PHP
PHP时间戳 strtotime()使用方法和技巧
Oct 29 #PHP
PHP页面中文乱码分析
Oct 29 #PHP
php四种基础算法代码实例
Oct 29 #PHP
You might like
建立动态的WML站点(一)
2006/10/09 PHP
php比较多维数组中值的大小排序实现代码
2012/09/08 PHP
php面试中关于面向对象的相关问题
2019/02/13 PHP
JS字符串函数扩展代码
2011/09/13 Javascript
使用GruntJS链接与压缩多个JavaScript文件过程详解
2013/08/02 Javascript
Javascript 颜色渐变效果的实现代码
2013/10/01 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
JavaScript实现数字数组正序排列的方法
2015/04/06 Javascript
AngularJs中Bootstrap3 datetimepicker使用实例
2016/12/13 Javascript
详解使用nvm安装node.js
2017/07/18 Javascript
Vue-Router2.X多种路由实现方式总结
2018/02/09 Javascript
JS实现移动端触屏拖拽功能
2018/07/31 Javascript
webpack4简单入门实例
2018/09/06 Javascript
Vue数字输入框组件的使用方法
2019/10/19 Javascript
js刷新页面location.reload()用法详解
2019/12/09 Javascript
js面试题之异步问题的深入理解
2020/09/20 Javascript
[02:15]2015国际邀请赛选手档案IG.Ferrari 430
2015/07/30 DOTA
python进阶教程之模块(module)介绍
2014/08/30 Python
Python实现批量更换指定目录下文件扩展名的方法
2016/09/19 Python
深入理解Python3中的http.client模块
2017/03/29 Python
华为校园招聘上机笔试题 扑克牌大小(python)
2020/04/22 Python
Pyecharts绘制全球流向图的示例代码
2020/01/08 Python
python selenium自动化测试框架搭建的方法步骤
2020/06/14 Python
详解如何在pyqt中通过OpenCV实现对窗口的透视变换
2020/09/20 Python
css3实现六边形边框的实例代码
2019/05/24 HTML / CSS
原装进口全世界:天猫国际
2016/08/03 全球购物
巴西在线鞋店:Shoestock
2017/10/28 全球购物
营销总监岗位职责范本
2014/02/26 职场文书
幼儿园师德演讲稿
2014/05/06 职场文书
科学发展观演讲稿
2014/09/11 职场文书
2015团员个人年度总结
2015/11/24 职场文书
Linux中Nginx的防盗链和优化的实现代码
2021/06/20 Servers
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
Python编程编写完善的命令行工具
2021/09/15 Python
Redis三种集群模式详解
2021/10/05 Redis
Python3的进程和线程你了解吗
2022/03/16 Python