php另類上傳圖片的方法(PHP用Socket上傳圖片)
服務(wù)器端:
<?php
set_time_limit(10);
//* 設(shè)置不顯示任何錯(cuò)誤 */
//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 "監(jiān)聽成功";
}
}
}else{
echo "監(jiān)聽失敗";
}
//$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);
?>
相關(guān)文章
Symfony2之session與cookie用法小結(jié)
這篇文章主要介紹了Symfony2之session與cookie用法,結(jié)合實(shí)例形式總結(jié)分析了Symfony框架針對(duì)session與cookie的設(shè)置、獲取及刪除等操作的實(shí)現(xiàn)方法,需要的朋友可以參考下2016-03-03PHP中Fatal error session_start()錯(cuò)誤解決步驟
這篇文章主要介紹了PHP中Fatal error session_start()錯(cuò)誤解決步驟,著重于錯(cuò)誤的排除步驟,一步一步排查下去,肯定可以解決這個(gè)錯(cuò)誤,需要的朋友可以參考下2014-08-08基于CI框架的微信網(wǎng)頁(yè)授權(quán)庫(kù)示例
這篇文章主要介紹了基于CI框架的微信網(wǎng)頁(yè)授權(quán)庫(kù),結(jié)合實(shí)例形式分析了CI框架整合微信授權(quán)功能及控制器調(diào)用的相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2016-11-11thinkPHP5框架實(shí)現(xiàn)基于ajax的分頁(yè)功能示例
這篇文章主要介紹了thinkPHP5框架實(shí)現(xiàn)基于ajax的分頁(yè)功能,結(jié)合實(shí)例形式分析了thinkPHP5框架上進(jìn)行ajax分頁(yè)操作的具體步驟、實(shí)現(xiàn)代碼與相關(guān)操作方法,需要的朋友可以參考下2018-06-06ThinkPHP中關(guān)聯(lián)查詢實(shí)例
這篇文章主要介紹了ThinkPHP中關(guān)聯(lián)查詢的用法,實(shí)例分析了ThinkPHP中table、join及原生查詢與多表查詢等的用法,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12PHP面向?qū)ο笾I(lǐng)域模型+數(shù)據(jù)映射器實(shí)例(分析)
下面小編就為大家?guī)?lái)一篇PHP面向?qū)ο笾I(lǐng)域模型+數(shù)據(jù)映射器實(shí)例(分析)。小編覺(jué)得挺不錯(cuò)的?,F(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06PHP給文字內(nèi)容中的關(guān)鍵字進(jìn)行套紅處理
本文介紹了一個(gè)PHP中的函數(shù),可以對(duì)內(nèi)容的關(guān)鍵字進(jìn)行套紅,高亮突出顯示關(guān)鍵字,分享給大家,希望對(duì)大家有所幫助。2016-04-04