temp_check_syntax.php.bak 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. <?php
  2. // 简单的语法检查脚本
  3. $file = 'app/Services/Common/StoreService.php';
  4. if (file_exists($file)) {
  5. $content = file_get_contents($file);
  6. // 检查基本的PHP语法结构
  7. $errors = [];
  8. // 检查类是否正确关闭
  9. $openBraces = substr_count($content, '{');
  10. $closeBraces = substr_count($content, '}');
  11. if ($openBraces !== $closeBraces) {
  12. $errors[] = "大括号不匹配: 开括号 $openBraces 个,闭括号 $closeBraces 个";
  13. }
  14. // 检查是否有重复的方法名
  15. preg_match_all('/public function (\w+)\s*\(/', $content, $matches);
  16. $methods = $matches[1];
  17. $duplicates = array_diff_assoc($methods, array_unique($methods));
  18. if (!empty($duplicates)) {
  19. $errors[] = "发现重复的方法: " . implode(', ', array_unique($duplicates));
  20. }
  21. // 检查PHP标签
  22. if (!preg_match('/^<\?php/', $content)) {
  23. $errors[] = "文件必须以 <?php 开头";
  24. }
  25. if (empty($errors)) {
  26. echo "✅ StoreService.php 语法检查通过!\n";
  27. echo "📊 统计信息:\n";
  28. echo " - 方法数量: " . count($methods) . "\n";
  29. echo " - 方法列表: " . implode(', ', $methods) . "\n";
  30. echo " - 大括号匹配: $openBraces 开 / $closeBraces 闭\n";
  31. } else {
  32. echo "❌ 发现以下问题:\n";
  33. foreach ($errors as $error) {
  34. echo " - $error\n";
  35. }
  36. }
  37. } else {
  38. echo "❌ 文件不存在: $file\n";
  39. }
  40. ?>