⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 classes.inc

📁 这是整套横扫千军3D版游戏的源码
💻 INC
字号:
<?php
//  require("constants.inc"); --> must be included before including classes.inc file!

  /* some examples:
     http://www.devshed.com/c/a/PHP/Socket-Programming-With-PHP/4/       (see pages 5 and 6)
   */

  class ServerConnection {

    var $socket;

    function ServerConnection()
    {
      $this->socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
    }

    // returns TRUE if successful, or error string otherwise
    function connect()
    {
      global $constants;

      $result = socket_connect($this->socket, $constants['remote_address'], $constants['remote_port']);
      if ($result === false) {
        return "socket_connect() failed.\nReason: ($result) " . socket_strerror(socket_last_error($this->socket));
      }

      return true;
    }

    // tries to identify to the remote access server. Returns TRUE or FALSE based on success.
    function identify()
    {
      global $constants;

      if ($this->sendLine("identify " . $constants['access_key']) !== true) return false;
      if (($res = $this->readLine()) === false) return false;
      if ($res == 'FAILED') return false;
      if ($res != 'PROCEED') return false;
      return true;
    }

    // returns TRUE if successful, or error string otherwise
    function sendLine($line)
    {
      $line .= "\n";
      return (socket_write($this->socket, $line, strlen($line))) ? true : "Could not send data to server";
    }

    // returns the line read, or FALSE if unsuccessful
    function readLine()
    {
      $out = socket_read($this->socket, 2048);
      if ($out === false) return false;
      return trim($out);
    }

    // closes the connection
    function close()
    {
      socket_close($this->socket);
    }

  } // end of class ServerConnection

?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -