• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 用PHP開發C/S結構

    發表于:2007-07-14來源:作者:點擊數: 標簽:
    服務器 ? php // Server // 設置錯誤處理 error_reporting (E_ALL); // 設置運行時間 set_time_limit (0); // 起用緩沖 ob_implicit_flush (); $ip = 127.0.0.1;// IP地址 $port = 1000;// 端口號 $socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP);
    服務器
    <?php
    // Server
    // 設置錯誤處理
    error_reporting (E_ALL);
    // 設置運行時間
    set_time_limit (0);
    // 起用緩沖
    ob_implicit_flush ();
    $ip = "127.0.0.1";        // IP地址
    $port = 1000;             // 端口號

    $socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP);       // 創建一個SOCKET
    if ($socket)
        echo "socket_create() suclearcase/" target="_blank" >ccessed!\n";
    else
        echo "socket_create() failed:".socket_strerror ($socket)."\n";

    $bind = socket_bind ($socket, $ip, $port);              // 綁定一個SOCKET
    if ($bind)
        echo "socket_bind() successed!\n";
    else
        echo "socket_bind() failed:".socket_strerror ($bind)."\n";

    $listen = socket_listen ($socket);                 // 間聽SOCKET
    if ($listen)
        echo "socket_listen() successed!\n";
    else
        echo "socket_listen() failed:".socket_strerror ($listen)."\n";

    while (true)
    {
        $msg = socket_accept ($socket);               // 接受一個SOCKET
        if (!$msg)
        {
            echo "socket_accept() failed:".socket_strerror ($msg)."\n";
            break;
        }
        $welcome = "Welcome to PHP Server!\n";
        socket_write ($msg, $welcome, strlen ($welcome));
        while (true)
        {
            $command = strtoupper (trim (socket_read ($msg, 1024)));
            if (!$command)
                break;
            switch ($command)
            {
                case "HELLO":
                    $writer = "Hello Everybody!";
                    break;
                case "QUIT":
                    $writer = "Bye-Bye";
                    break;
                case "HELP":
                    $writer = "HELLO\tQUIT\tHELP";
                    break;
                default:
                    $writer = "Error Command!";
            }
            socket_write ($msg, $writer, strlen ($writer));
            if ($command == "QUIT")
                break;
        }
        socket_close ($msg);
    }

    socket_close ($socket);                   // 關閉SOCKET
    ?>


    客戶端
    <?php
    // Client
    // 設置錯誤處理
    error_reporting (E_ALL);
    // 設置處理時間
    set_time_limit (0);

    $ip = "127.0.0.1";       // IP 地址
    $port = 1000;            // 端口號

    $socket = socket_create (AF_INET, SOCK_STREAM, SOL_TCP);   // 創建一個SOCKET
    if ($socket)
        echo "socket_create() successed!\n";
    else
        echo "socket_create() failed:".socket_strerror ($socket)."\n";

    $conn = socket_connect ($socket, $ip, $port);       // 建立SOCKET的連接
    if ($conn)
        echo "Success to connection![".$ip.":".$port."]\n";
    else
        echo "socket_connect() failed:".socket_strerror ($conn)."\n";

    echo socket_read ($socket, 1024);   

    $stdin = fopen ('php://stdin', 'r');
    while (true)
    {
        $command = trim (fgets ($stdin, 1024));
        socket_write ($socket, $command, strlen ($command));
        $msg = trim (socket_read ($socket, 1024));
        echo $msg."\n";
        if ($msg == "Bye-Bye")
            break;
    }
    fclose ($stdin);
    socket_close ($socket);
    ?>

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>