main.php 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. <?php
  2. class ProgramMain {
  3. private static ?GameClient $client = null;
  4. private static function getClient(): GameClient {
  5. if (self::$client === null) {
  6. self::$client = new GameClient();
  7. echo "客户端初始化完成\n";
  8. }
  9. return self::$client;
  10. }
  11. public static function handleCommand(array $args): void {
  12. $client = self::getClient();
  13. if (count($args) < 2) {
  14. echo "使用方法: php client.php [命令] [参数...]\n";
  15. echo "可用命令:\n";
  16. echo " login [账号] [密码] - 登录游戏\n";
  17. echo " start - 启动客户端\n";
  18. return;
  19. }
  20. $command = $args[1];
  21. switch ($command) {
  22. case 'login':
  23. if (count($args) < 4) {
  24. echo "错误:login命令需要账号和密码参数\n";
  25. echo "示例: php client.php login myaccount mypassword\n";
  26. return;
  27. }
  28. $account = $args[2];
  29. $password = $args[3];
  30. $client->login($account, $password);
  31. break;
  32. case 'start':
  33. $client->start();
  34. break;
  35. default:
  36. echo "未知命令: $command\n";
  37. }
  38. }
  39. }
  40. // 命令行执行
  41. if (php_sapi_name() === 'cli') {
  42. ProgramMain::handleCommand($argv);
  43. }