$server['id'], 'remark' => $server['name'], 'server' => $server['host'], 'server_port' => $server['port'], 'password' => $server['passwd'], 'method' => $server['method'], ]; return $config; } public static function buildVmess($server) { $config = [ 'v' => '2', 'ps' => $server['name'], 'add' => $server['host'], 'port' => $server['port'], 'id' => $server['uuid'], 'aid' => $server['v2_alter_id'], 'net' => $server['v2_net'], 'type' => $server['v2_type'], 'host' => $server['v2_host'], 'path' => $server['v2_path'], 'tls' => $server['v2_tls'], ]; return 'vmess://'.base64_encode(json_encode($config)).PHP_EOL; } public static function buildTrojan($server) { $name = rawurlencode($server['name']); $query = ''; if (array_key_exists('relay_server', $server)) { $query = "?sni={$server['relay_server']}"; } return "trojan://{$server['passwd']}@{$server['host']}:{$server['port']}{$query}#{$name}".PHP_EOL; } }