Beispiel #1
0
 public static function generate($file)
 {
     extract(GeoName::$files[$file]);
     $srcFile = PhpArray::fetch($src, $srcFile);
     echo sprintf("-> Parsing %s\n", basename($srcFile));
     $items = array();
     $fp = fopen($srcFile, "r");
     $i = 0;
     while (($row = fgetcsv($fp, 0, "\t")) !== false) {
         if (count($row) == 1 || preg_match('/^#/', $row[0])) {
             continue;
         }
         $i++;
         $item = call_user_func(array('GeoName', $map), $row, $i);
         if ($item) {
             $items[] = $item;
         }
     }
     echo sprintf("-> Writing %s\n", $file);
     $out = PhpArray::generate(compact('src', 'items'));
     file_put_contents(ROOT . '/' . $file, $out);
 }