ลิงก์ถาวร:
<?php
set_time_limit (10);
//* 设置不显示任何错误 */
//error_reporting(0);
ฟังก์ชั่น varinfo($str) {
เสียงสะท้อน "<pre>";
var_dump($str);
เสียงสะท้อน "<pre>";
}
$commonProtocol = getprotobyname("tcp");
$socket = socket_create(AF_INET, SOCK_STREAM, $commonProtocol);
ถ้า ($ ซ็อกเก็ต) {
$result = socket_bind($socket, '192.168.3.57', 1337);
ถ้า ($ ผลลัพธ์) {
$result = socket_listen($socket, 5);
ถ้า ($ ผลลัพธ์) {
เสียงสะท้อน "监听成功";
-
-
}อื่น{
เสียงสะท้อน "监听失败";
}
//$path = "/home/upload/";
$path = "e://web//";
ในขณะที่ (จริง) {
$การเชื่อมต่อ = socket_accept($socket);
ถ้า($การเชื่อมต่อ){
$msg = "telnet สำเร็จ!rn";
socket_write($การเชื่อมต่อ, $msg, strlen($msg));
$BufferPond = อาร์เรย์();
$บัฟเฟอร์ = '';
ในขณะที่($flag = socket_recv($การเชื่อมต่อ, $buffer, 1024, 0)){
if (false !== strpos($buffer,'ชื่อไฟล์:')){
$ชื่อไฟล์ = substr($บัฟเฟอร์,9);
$filename = $path.$ชื่อไฟล์;
$fp = fopen($ชื่อไฟล์,"wb");
ดำเนินการต่อ;
-
fwrite($fp,$บัฟเฟอร์);
-
fclose($fp);
socket_close($การเชื่อมต่อ);
-
-
socket_close($ซ็อกเก็ต);
?>
客户端:
<?php
$errno='001';
$errstr="ข้อผิดพลาดของไฟล์ซ็อกเก็ต";
$fp = fsockopen("192.168.3.57", 1337, $errno, $errstr, 10);
ถ้า (!$fp) {
echo "$errstr ($errno)<br />n";
} อื่น {
$str = "ชื่อไฟล์:socket_file.bmp";
fwrite($fp, $str); $ออก = file_get_contents('../../iphone3G.bmp');
ถ้า($ออก){
fwrite($fp, $ออก);
fwrite($fp,'เกิน');
เสียงสะท้อน "上传成功";
-
-
fclose($fp);
-