$secret, 'response' => $token, 'remoteip' => $_SERVER['REMOTE_ADDR'] ?? '', ]); $context = stream_context_create([ 'http' => [ 'method' => 'POST', 'header' => "Content-Type: application/x-www-form-urlencoded\r\n", 'content' => $post_data, 'timeout' => 10, ], ]); try { $response = @file_get_contents('https://www.google.com/recaptcha/api/siteverify', false, $context); if ($response === false) return false; $result = json_decode($response, true); if (!is_array($result)) return false; return !empty($result['success']) && (float)($result['score'] ?? 0) >= $min_score; } catch (Throwable $e) { error_log('reCAPTCHA verify error: ' . $e->getMessage()); return false; } }