deformed-offering

Weather station scripts - USGS earthquakes

They're free, but use at your own risk

The scripts referenced here are used in the operation of this weather station, and may be freely copied and used to support your station. Please note that you use these scripts at your own risk. No warranty is expressed or implied. I accept no liability for any damages that may ensue from their use.
You will need to configure them for your own particular weather station website.
RSS feed for Scripts Updates A RSS Feed is available to help keep you informed on updates to the scripts.

Many of these scripts are now available on GitHub at https://github.com/ktrue

If you find one or more of the scripts useful to you, please consider making a donation to help offset the routine expenses of operation of this website.
Thanks for your kind support!

A Version History is available -- check back from time to time to see if there are updates to scripts you have downloaded earlier. Announcements of version updates and new scripts are made on WXForum.net and Weather-Watch forums and saratogaWXPHP Twitter account as they become available.

This page was updated Sunday, 27-May-2018 2:25 PM

PHP Scripts (run on webserver)

Recent nearby earthquakes (from USGS, NRC, BGS) PHP

Here in California, we're a bit sensitive to the earth moving (it happens a lot), so I wrote a PHP scripts to get, cache and reformat the last 7 days of earthquake information so it can be included on the website with links to additional info.

The output of these scripts is XHTML 1.0-Strict compliant. All of them use the same style for inclusion into your webpage as shown in the example below.

Note: Version 2.00 of the script replaced Google maps with Leaflet/OpenStreetMaps scripts, so you no longer need a Google API key (or any API key to use the 5 included maps with the script.

If you wish to use the OPTIONAL Mapbox.com tiles (terrain3, Satellite maps), you will need a Mapbox.com API key (called an "Access Token") which can be acquired (for free with 50K accesses usage/month) at:

https://www.mapbox.com/signup/?

in the quakes.php script you can put

$setMapboxAPIkey = '-replace-this-with-your-API-key-here-';

Note: if using the Saratoga template set, put a new entry in Settings.php

$SITE['mapboxAPIkey'] = '-replace-this-with-your-API-key-here-';

A Mapbox API key is OPTIONAL .. you do not need it to use maps from 5 included free map tile providers.

The USA/World earthquake script uses the new USGS GeoJSON feed for data and provides information on USA quakes of 1.0+ magnitude and Worldwide quakes of 4.0+ magnitude. This script is included in the AJAX/PHP Base-USA and Base-World template sets. Sample output with USA settings:

Earthquakes in the past 7 days of magnitude 2.0 or greater within 200 mi
Update time = Thu, 19-Sep-2019 12:23am PDT

Epicenter Near Magnitude Distance to Epicenter Time Link
3 mi NW of Parkfield, CA 3.1 000204127 mi 1568843105Wed, 18-Sep-2019 2:45pm PDT map
1 mi N of The Geysers, CA 2.9 000180112 mi 1568834853Wed, 18-Sep-2019 12:27pm PDT map
2 mi NW of The Geysers, CA 2.5 000183114 mi 1568825039Wed, 18-Sep-2019 9:43am PDT map
6 mi W of Templeton, CA 2.2 000220137 mi 1568783322Tue, 17-Sep-2019 10:08pm PDT map
16 mi NE of Morgan Hill, CA 2.2 00005333 mi 1568761359Tue, 17-Sep-2019 4:02pm PDT map
6 mi NE of Cayucos, CA 2.1 000223139 mi 1568723741Tue, 17-Sep-2019 5:35am PDT map
2 mi NNW of The Geysers, CA 2.2 000182113 mi 1568674442Mon, 16-Sep-2019 3:54pm PDT map
2 mi NNW of The Geysers, CA 2.8 000182113 mi 1568674413Mon, 16-Sep-2019 3:53pm PDT map
9 mi S of Tres Pinos, CA 2.2 00009358 mi 1568670990Mon, 16-Sep-2019 2:56pm PDT map
3 mi SW of Stony Gorge Reservoir, CA 2.1 000259161 mi 1568645972Mon, 16-Sep-2019 7:59am PDT map
4 mi ENE of Mammoth Lakes, CA 2.0 000278173 mi 1568640331Mon, 16-Sep-2019 6:25am PDT map
12 mi SE of Lopez Point, CA 3.0 000162101 mi 1568626584Mon, 16-Sep-2019 2:36am PDT map
9 mi WSW of La Porte, CA 2.6 000276171 mi 1568622122Mon, 16-Sep-2019 1:22am PDT map
7 mi NE of Pinnacles, CA 2.6 00011471 mi 1568586214Sun, 15-Sep-2019 3:23pm PDT map
2 mi E of Mammoth Lakes, CA 2.2 000275171 mi 1568584200Sun, 15-Sep-2019 2:50pm PDT map
2 mi ESE of Rockport, CA 2.0 000313195 mi 1568566994Sun, 15-Sep-2019 10:03am PDT map
6 mi NE of Hollister, CA 2.4 00007546 mi 1568562516Sun, 15-Sep-2019 8:48am PDT map
6 mi ESE of Pinnacles, CA 2.1 00012377 mi 1568561597Sun, 15-Sep-2019 8:33am PDT map
2 mi E of Mammoth Lakes, CA 2.6 000276171 mi 1568558588Sun, 15-Sep-2019 7:43am PDT map
7 mi W of Toms Place, CA 2.1 000286178 mi 1568534607Sun, 15-Sep-2019 1:03am PDT map
6 mi SW of Ridgemark, CA 2.5 00007848 mi 1568505160Sat, 14-Sep-2019 4:52pm PDT map
5 mi SW of Ridgemark, CA 2.8 00007848 mi 1568505133Sat, 14-Sep-2019 4:52pm PDT map
2 mi NNE of Alum Rock, CA 2.1 00002314 mi 1568502857Sat, 14-Sep-2019 4:14pm PDT map
4 mi NNW of Pinnacles, CA 2.4 00010767 mi 1568482079Sat, 14-Sep-2019 10:27am PDT map
4 mi NNW of Pinnacles, CA 2.6 00010767 mi 1568481988Sat, 14-Sep-2019 10:26am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568465678Sat, 14-Sep-2019 5:54am PDT map
2 mi E of Mammoth Lakes, CA 2.1 000275171 mi 1568465607Sat, 14-Sep-2019 5:53am PDT map
2 mi E of Mammoth Lakes, CA 2.8 000275171 mi 1568465538Sat, 14-Sep-2019 5:52am PDT map
4 mi NNW of Pinnacles, CA 2.0 00010867 mi 1568458362Sat, 14-Sep-2019 3:52am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000276171 mi 1568377122Fri, 13-Sep-2019 5:18am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000276171 mi 1568376112Fri, 13-Sep-2019 5:01am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568376069Fri, 13-Sep-2019 5:01am PDT map
2 mi E of Mammoth Lakes, CA 2.2 000276171 mi 1568375998Fri, 13-Sep-2019 4:59am PDT map
2 mi E of Mammoth Lakes, CA 2.1 000275171 mi 1568374212Fri, 13-Sep-2019 4:30am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568374142Fri, 13-Sep-2019 4:29am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568374124Fri, 13-Sep-2019 4:28am PDT map
2 mi E of Mammoth Lakes, CA 2.1 000275171 mi 1568374068Fri, 13-Sep-2019 4:27am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568374009Fri, 13-Sep-2019 4:26am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568373700Fri, 13-Sep-2019 4:21am PDT map
2 mi E of Mammoth Lakes, CA 2.6 000275171 mi 1568373480Fri, 13-Sep-2019 4:18am PDT map
7 mi NE of Pinnacles, CA 2.2 00011471 mi 1568371626Fri, 13-Sep-2019 3:47am PDT map
6 mi NNW of Pinnacles, CA 3.0 00010565 mi 1568366696Fri, 13-Sep-2019 2:24am PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568363787Fri, 13-Sep-2019 1:36am PDT map
7 mi ESE of Pinnacles, CA 2.5 00012477 mi 1568363528Fri, 13-Sep-2019 1:32am PDT map
6 mi NNW of Pinnacles, CA 2.7 00010565 mi 1568363213Fri, 13-Sep-2019 1:26am PDT map
2 mi ENE of Mammoth Lakes, CA 2.2 000275171 mi 1568360468Fri, 13-Sep-2019 12:41am PDT map
6 mi NNW of Pinnacles, CA 2.0 00010465 mi 1568359115Fri, 13-Sep-2019 12:18am PDT map
6 mi NW of Pinnacles, CA 2.3 00010465 mi 1568358330Fri, 13-Sep-2019 12:05am PDT map
6 mi NNW of Pinnacles, CA 3.8 00010465 mi 1568357421Thu, 12-Sep-2019 11:50pm PDT map
3 mi S of Talmage, CA 2.4 000225140 mi 1568353133Thu, 12-Sep-2019 10:38pm PDT map
2 mi E of Mammoth Lakes, CA 2.0 000276171 mi 1568352377Thu, 12-Sep-2019 10:26pm PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568352335Thu, 12-Sep-2019 10:25pm PDT map
2 mi E of Mammoth Lakes, CA 2.1 000275171 mi 1568352321Thu, 12-Sep-2019 10:25pm PDT map
6 mi NNW of Pinnacles, CA 2.6 00010565 mi 1568348916Thu, 12-Sep-2019 9:28pm PDT map
2 mi E of Mammoth Lakes, CA 2.5 000276171 mi 1568348322Thu, 12-Sep-2019 9:18pm PDT map
6 mi NNW of Pinnacles, CA 3.3 00010565 mi 1568347192Thu, 12-Sep-2019 8:59pm PDT map
2 mi E of Mammoth Lakes, CA 2.1 000275171 mi 1568347114Thu, 12-Sep-2019 8:58pm PDT map
2 mi S of Redwood Valley, CA 2.0 000242150 mi 1568347044Thu, 12-Sep-2019 8:57pm PDT map
2 mi E of Mammoth Lakes, CA 2.5 000276171 mi 1568346272Thu, 12-Sep-2019 8:44pm PDT map
2 mi E of Mammoth Lakes, CA 2.2 000275171 mi 1568346160Thu, 12-Sep-2019 8:42pm PDT map
2 mi E of Mammoth Lakes, CA 2.3 000276171 mi 1568346116Thu, 12-Sep-2019 8:41pm PDT map
2 mi E of Mammoth Lakes, CA 2.8 000275171 mi 1568345793Thu, 12-Sep-2019 8:36pm PDT map
2 mi E of Mammoth Lakes, CA 2.4 000275171 mi 1568344931Thu, 12-Sep-2019 8:22pm PDT map
2 mi E of Mammoth Lakes, CA 2.0 000275171 mi 1568344065Thu, 12-Sep-2019 8:07pm PDT map
2 mi E of Mammoth Lakes, CA 2.2 000274170 mi 1568344032Thu, 12-Sep-2019 8:07pm PDT map
2 mi E of Mammoth Lakes, CA 2.7 000275171 mi 1568343995Thu, 12-Sep-2019 8:06pm PDT map
2 mi E of Mammoth Lakes, CA 2.6 000275171 mi 1568343939Thu, 12-Sep-2019 8:05pm PDT map
2 mi E of Mammoth Lakes, CA 2.1 000275171 mi 1568343349Thu, 12-Sep-2019 7:55pm PDT map
2 mi E of Mammoth Lakes, CA 3.0 000275171 mi 1568343175Thu, 12-Sep-2019 7:52pm PDT map
2 mi E of Mammoth Lakes, CA 2.2 000275171 mi 1568342138Thu, 12-Sep-2019 7:35pm PDT map
2 mi SW of San Juan Bautista, CA 2.0 00006540 mi 1568327352Thu, 12-Sep-2019 3:29pm PDT map
10 mi NW of Pinnacles, CA 2.6 00009861 mi 1568326088Thu, 12-Sep-2019 3:08pm PDT map
8 mi S of Tres Pinos, CA 2.0 00009357 mi 1568316282Thu, 12-Sep-2019 12:24pm PDT map
14 mi S of Mammoth Lakes, CA 2.2 000267166 mi 1568304060Thu, 12-Sep-2019 9:01am PDT map
2 mi ENE of Mammoth Lakes, CA 2.3 000275171 mi 1568276081Thu, 12-Sep-2019 1:14am PDT map

75 earthquakes found. Click on location or map links for more details from the USGS

Script by Saratoga-weather.org

This was invoked by using the following code:

<?php 
# settings -------------------------- 
  $doIncludeQuake = true;
# uncomment ONE of the $setDistanceDisplay lines to use as template for distance displays  
#  $setDistanceDisplay = 'mi (km)';
  $setDistanceDisplay = 'mi';
#  $setDistanceDisplay = 'km (mi)';
#  $setDistanceDisplay = 'km';

  $setDistanceRadius  = 200;  // same units as first unit in $setDistanceDisplay
# NOTE: quakes of magnitude 1.0+ are available for USA locations only.
#    non-USA location earthquakes of magnitude 4.0+ are the only ones available from the USGS
  $setMinMagnitude = '2.0';  // minimum Richter Magnitude to display
  $setHighMagnitude = '4.0';  // highlight this Magnitude and greater
  
  $setMapZoomDefault = 7;    // default zoom for Google Map 1=world to 13=street

# script will use your $SITE[] values for latitude, longitude, timezone and time display format
  $setLatitude  = 37.2746251;    //North=positive, South=negative decimal degrees
  $setLongitude = -122.0229656;   //East=positive, West=negative decimal degrees
# The above settings are for saratoga-weather.org location
  $setLocationName = 'Saratoga, CA'; // city/town name for lat/long above 
#
  $setTimeZone = "America/Los_Angeles";  //NOTE: this *MUST* be set correctly to
# translate UTC times to your LOCAL time for the displays.
# Use http://www.php.net/manual/en/timezones.php to find the timezone suitable for
#  your location.

#  pick a format for the time to display ..uncomment one (or make your own)
# $setTimeFormat = 'D, Y-m-d H:i:s T';  // Fri, 2006-03-31 14:03:22 TZone
  $setTimeFormat = 'D, d-M-Y H:i:s T';  // Fri, 31-Mar-2006 14:03:22 TZone

  $setDoLinkTarget = false;   // =true; to have links open in new page, =false; for XHTML 1.0-Strict

	$mapProvider = 'Esri_WorldTopoMap'; // ESRI topo map - no key needed
# $setMapProvider = 'OSM';     // OpenStreetMap - no key needed
# $setMapProvider = 'Terrain'; // Terrain map by stamen.com - no key needed
# $setMapProvider = 'OpenTopo'; // OpenTopoMap.com - no key needed
# $setMapProvider = 'Wikimedia'; // Wikimedia map - no key needed
  
# $mapProvider = 'MapboxSat';  // Map by Mapbox.com - API KEY needed in $setMapboxAPIkey 
# $mapProvider = 'MapboxTer';  // Map by Mapbox.com - API KEY needed in $setMapboxAPIkey 
 $setMapboxAPIkey = '--mapbox-API-key--';  // use this for the API key to MapBox

  include_once("quake-json.php");
?>

Also required is the styling and JavaScript <script> statements in the <head>...</head> part of the page (see the sample quakes.php page in the distribution quake-json.zip package for details).

The USGS GeoJSON earthquake script (V2.01 - 27-May-2018):
download .zip package | download script only [ see version history ]

This script loads the GeoJSON feed for all earthquakes in the last 7 days from the USGS. For the USA, magnitude 1.0+ quakes are available. For non-USA locations, the USGS only provides information on magnitude 4.0+ based on the data they receive from partner seismographic organizations. If you are installing the script for standalone use, do download the .ZIP package as it contains the graphics files needed for the Google Map. If you are using the AJAX/PHP template set (V3+), the script is already integrated into the Base-USA and Base-World templates.

For Base-World template users, the script is compatible with the language translation features of the template set. You may need to add to your language-LL.txt translation file the following entries (translated) in order to show the ouput in language LL.
Note: the |of| entry below is used in the reports for quake location as in:
  20 mi NNW of Saratoga, California

langlookup|Update time|Update time|
langlookup|of|of|
langlookup|No earthquakes of magnitude|No earthquakes of magnitude|
langlookup|or greater within|or greater within|
langlookup|reported in last 7 days|reported in last 7 days|
langlookup|Cluster - click to expand details|Cluster - click to expand details|
langlookup|Enable JavaScript to view the Google Map.|Enable JavaScript to view the Google Map.|
langlookup|Earthquakes in the past 7 days of magnitude|Earthquakes in the past 7 days of magnitude|
langlookup|or greater within|or greater within|
langlookup|Epicenter Near|Epicenter Near|
langlookup|Magnitude|Magnitude|
langlookup|Distance to Epicenter|Distance to Epicenter|
langlookup|Time|Time|
langlookup|Link|Link|
langlookup|map|map|
langlookup|Note: Click on column heading marked with|Note: Click on column heading marked with|
langlookup|to sort column contents.|to sort column contents.|
langlookup|earthquakes found. Click on location or map links for more details from the <a href="http://earthquake.usgs.gov/earthquakes/map/">USGS</a>|earthquakes found. Click on location or map links for more details from the <a href="http://earthquake.usgs.gov/earthquakes/map/">USGS</a>|
langlookup|Depth|Depth|
langlookup|Distance to epicenter|Distance to epicenter|
langlookup|Map and data courtesy of|Map and data courtesy of|
langlookup|United States Geological Survey|United States Geological Survey|

The Canada earthquake script : demo and download [ see version history ]
Documentation on how to customize the script is in comments contained in the source. For anywhere in Canada, you just have to change $myLat and $myLong to your station's decimal latitude and longitude to see it work in your area. Defaults are for magnitude 2.0 (or greater) within a 500 km radius. This script uses data from Natural Resources Canada website and returns earthquake activity over the last 30 days. Version 1.03+ now provides both English and French display.

The UK earthquake script : demo and download [ see version history ]
Documentation on how to customize the script is in comments contained in the source. For anywhere in the United Kingdom, you just have to change $myLat and $myLong to your station's decimal latitude and longitude to see it work in your area. Defaults are for earthquakes within a 500 km radius. This script uses data from British Geological Survey website and returns earthquake activity over the last 30 days.
BGS data is used with permission as long as the attribution built into the script displays with the script output.

Deprecated Scripts

With the release of quake-json.php script on 8-Sep-2012, the following scripts are no longer maintained as the USGS is deprecating the pages on their website that these scripts require:

  • quake-CANV.php
  • quake-USA.php
  • quake-WORLD.php and quake-WORLD-ML.php

The quake-json.php script uses the USGS new GeoJSON feed for 1+ (USA) and 4+ (World) magnitude events and replaces the functionality of the above scripts.

deformed-offering