Mercurial > hg > rc1
comparison vendor/sabre/vobject/bin/fetch_windows_zones.php @ 7:430dbd5346f7
vendor sabre as distributed
| author | Charlie Root |
|---|---|
| date | Sat, 13 Jan 2018 09:06:10 -0500 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 6:cec75ba50afc | 7:430dbd5346f7 |
|---|---|
| 1 #!/usr/bin/env php | |
| 2 <?php | |
| 3 | |
| 4 $windowsZonesUrl = 'http://unicode.org/repos/cldr/trunk/common/supplemental/windowsZones.xml'; | |
| 5 $outputFile = __DIR__ . '/../lib/timezonedata/windowszones.php'; | |
| 6 | |
| 7 echo "Fetching timezone map from: " . $windowsZonesUrl, "\n"; | |
| 8 | |
| 9 $data = file_get_contents($windowsZonesUrl); | |
| 10 | |
| 11 $xml = simplexml_load_string($data); | |
| 12 | |
| 13 $map = []; | |
| 14 | |
| 15 foreach($xml->xpath('//mapZone') as $mapZone) { | |
| 16 | |
| 17 $from = (string)$mapZone['other']; | |
| 18 $to = (string)$mapZone['type']; | |
| 19 | |
| 20 list($to) = explode(' ', $to, 2); | |
| 21 | |
| 22 if (!isset($map[$from])) { | |
| 23 $map[$from] = $to; | |
| 24 } | |
| 25 | |
| 26 } | |
| 27 | |
| 28 ksort($map); | |
| 29 echo "Writing to: $outputFile\n"; | |
| 30 | |
| 31 $f = fopen($outputFile,'w'); | |
| 32 fwrite($f, "<?php\n\n"); | |
| 33 fwrite($f, "/**\n"); | |
| 34 fwrite($f, " * Automatically generated timezone file\n"); | |
| 35 fwrite($f, " *\n"); | |
| 36 fwrite($f, " * Last update: " . date(DATE_W3C) . "\n"); | |
| 37 fwrite($f, " * Source: " .$windowsZonesUrl . "\n"); | |
| 38 fwrite($f, " *\n"); | |
| 39 fwrite($f, " * @copyright Copyright (C) 2007-2014 fruux GmbH (https://fruux.com/).\n"); | |
| 40 fwrite($f, " * @license http://sabre.io/license/ Modified BSD License\n"); | |
| 41 fwrite($f, " */\n"); | |
| 42 fwrite($f, "\n"); | |
| 43 fwrite($f, "return "); | |
| 44 fwrite($f, var_export($map, true) . ';'); | |
| 45 fclose($f); | |
| 46 | |
| 47 echo "Done\n"; |
