u; download=$user->d; total=$user->transfer_enable; expire=".strtotime($user->expired_at)); } $config = Yaml::parseFile(base_path().$file_path); $proxyProfiles = Protocols\Clash::build($servers); $config['proxies'] = array_merge($config['proxies'] ?: [], $proxyProfiles['proxies']); foreach ($config['proxy-groups'] as $k => $v) { if (! is_array($config['proxy-groups'][$k]['proxies'])) { continue; } $config['proxy-groups'][$k]['proxies'] = array_merge($config['proxy-groups'][$k]['proxies'], $proxyProfiles['name']); } array_unshift($config['rules'], 'DOMAIN,'.$_SERVER['HTTP_HOST'].',DIRECT'); // Set current sub-domain to be direct return str_replace('$app_name', $appName, Yaml::dump($config, 2, 4, Yaml::DUMP_EMPTY_ARRAY_AS_SEQUENCE)); } }