scan.php

  1. <?php
  2. /*
  3. scan.php — Francisco Cascales — 2017-11-26
  4.  
  5. Convierte los primos almacenados en los ficheros .zip de la web:
  6.  
  7. The first fifty million primes
  8. https://primes.utm.edu/lists/small/millions/
  9.  
  10. en una lista de primos, uno por línea.
  11.  
  12. */
  13.  
  14.  
  15. ini_set('display_errors', 1);
  16. header ("Content-Type: text/plain");
  17.  
  18. for ($file=1; $file<=50; $file++) {
  19. $input = "primes$file.txt";
  20. $output = "out$file.txt";
  21. echo "$input to $output ...\n";
  22. if (file_exists($output)) unlink($output);
  23. $text = explode("\r\n", file_get_contents($input));
  24. $numline = 0;
  25. $counter = 0;
  26. foreach($text as $line) {
  27. if ($numline++ == 0) continue;
  28. $line = trim($line);
  29. if (empty($line)) continue;
  30. $numbers = explode(" ", $line);
  31. foreach($numbers as $number) {
  32. $number = trim($number);
  33. if (empty($number)) continue;
  34. file_put_contents($output, "$number\n", FILE_APPEND);
  35. ////if ($counter++ >= 100) exit();
  36. }
  37. }
  38. }
  39.  

Proinf.net