php另类上传图片的方法(PHP用Socket上传图片)
服務器端:
。 代碼如下:<?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);
?>
轉載于:https://www.cnblogs.com/lemon66/p/4102736.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的php另类上传图片的方法(PHP用Socket上传图片)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 详解:路由器性能的各项指标
- 下一篇: QImage的用法