Files
zyt/server/check_logistics_config.php
2026-04-07 18:13:03 +08:00

91 lines
2.6 KiB
PHP

<?php
/**
* 快速检查快递100配置
*/
// 简单读取 .env 文件
$envFile = __DIR__ . '/.env';
if (!file_exists($envFile)) {
die("错误:.env 文件不存在\n");
}
$envContent = file_get_contents($envFile);
$lines = explode("\n", $envContent);
$config = [];
foreach ($lines as $line) {
$line = trim($line);
if (empty($line) || $line[0] === '#' || $line[0] === ';' || $line[0] === '[') {
continue;
}
if (strpos($line, '=') !== false) {
list($key, $value) = explode('=', $line, 2);
$key = trim($key);
$value = trim($value);
// 去除引号
$value = trim($value, '"\'');
$config[$key] = $value;
}
}
echo "===========================================\n";
echo "快递100配置检查\n";
echo "===========================================\n\n";
$customer = $config['LOGISTICS_KUAIDI100_CUSTOMER'] ?? '';
$key = $config['LOGISTICS_KUAIDI100_KEY'] ?? '';
$disable = $config['LOGISTICS_KUAIDI100_DISABLE'] ?? 'false';
echo "CUSTOMER: " . ($customer ? substr($customer, 0, 8) . '****' : '未配置') . "\n";
echo "KEY: " . ($key ? substr($key, 0, 4) . '****' : '未配置') . "\n";
echo "DISABLE: " . $disable . "\n\n";
if (empty($customer) || empty($key)) {
echo "❌ 错误:CUSTOMER 或 KEY 未配置\n";
exit(1);
}
if (strtolower($disable) === 'true' || $disable === '1') {
echo "❌ 错误:快递100已被禁用 (DISABLE = true)\n";
echo "解决方案:将 LOGISTICS_KUAIDI100_DISABLE 改为 false\n";
exit(1);
}
echo "✅ 配置正确!快递100应该可以正常使用\n\n";
echo "测试查询(需要真实运单号):\n";
echo "-------------------------------------------\n";
// 测试快递100 API
$testNumber = 'SF1234567890'; // 替换为真实运单号
$phone = '1234'; // 收件人手机后4位
$paramArr = [
'com' => 'shunfeng',
'num' => $testNumber,
'phone' => $phone,
'resultv2' => '1',
];
$paramJson = json_encode($paramArr, JSON_UNESCAPED_UNICODE);
$sign = strtoupper(md5($paramJson . $key . $customer));
$postData = http_build_query([
'customer' => $customer,
'param' => $paramJson,
'sign' => $sign,
]);
echo "请求参数已生成\n";
echo "Customer: " . substr($customer, 0, 8) . "****\n";
echo "Sign: " . substr($sign, 0, 8) . "****\n\n";
echo "如需测试实际查询,请:\n";
echo "1. 将上面的 testNumber 替换为真实运单号\n";
echo "2. 将 phone 替换为收件人手机后4位\n";
echo "3. 在浏览器或前端系统中测试查询功能\n\n";
echo "===========================================\n";
echo "检查完成\n";
echo "===========================================\n";