= 0 && version_compare(phpversion(), '8.0') < 0) { echo "🔧 PHP版本 < 8.0,应该设置 CURLOPT_SAFE_UPLOAD\n"; if (defined('CURLOPT_SAFE_UPLOAD')) { curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false); echo "✅ 设置 CURLOPT_SAFE_UPLOAD = false 成功\n"; } } else { echo "✅ PHP版本 >= 8.0,跳过 CURLOPT_SAFE_UPLOAD 设置(安全上传默认启用)\n"; } // 测试一个简单的HTTP请求 curl_setopt($ch, CURLOPT_URL, "https://httpbin.org/get"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_TIMEOUT, 10); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); echo "🔄 测试HTTP请求...\n"; $response = curl_exec($ch); $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); $error = curl_error($ch); if ($response !== false && $httpCode == 200) { echo "✅ HTTP请求成功,状态码: $httpCode\n"; echo "✅ CURL功能正常工作\n"; } else { echo "⚠️ HTTP请求失败,状态码: $httpCode\n"; if ($error) { echo "错误信息: $error\n"; } } } catch (Exception $e) { echo "❌ 测试失败: " . $e->getMessage() . "\n"; } catch (ValueError $e) { echo "❌ PHP8 ValueError: " . $e->getMessage() . "\n"; echo "这表明CURLOPT_SAFE_UPLOAD问题仍然存在\n"; } finally { curl_close($ch); } echo "\n=== 包含communication.func.php测试 ===\n"; // 测试实际的communication.func.php文件 require_once __DIR__ . '/framework/function/communication.func.php'; try { echo "✅ communication.func.php 加载成功\n"; // 测试ihttp_get函数(这会触发CURLOPT_SAFE_UPLOAD相关代码) if (function_exists('ihttp_get')) { echo "🔄 测试ihttp_get函数...\n"; $result = ihttp_get("https://httpbin.org/get"); if ($result && is_array($result)) { echo "✅ ihttp_get 函数工作正常\n"; } else { echo "⚠️ ihttp_get 函数返回异常\n"; } } else { echo "❌ ihttp_get 函数不存在\n"; } } catch (Exception $e) { echo "❌ communication.func.php 测试失败: " . $e->getMessage() . "\n"; } catch (ValueError $e) { echo "❌ communication.func.php PHP8 ValueError: " . $e->getMessage() . "\n"; } echo "\n=== 测试完成 ===\n"; ?>