Weather station scripts - NWS Forecast

They're free, but use at your own risk

The scripts in PHP and Perl 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 station website.
RSS feed for Scripts Updates A RSS Feed is available to help keep you informed on updates to the scripts.

If you find one or more of the scripts useful to you, please consider making a small 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 as they become available.

Latest postings about Saratoga-weather.org Weather PHP scripts on Twitter

follow Saratoga-Weather.org PHP script updates on Twitter

This page was updated Tuesday, 01-Sep-2009 1:03 PM

Carterlake.org scripts with a few mods...

Tom at carterlake.org has done a great job generating and freely sharing his PHP scripts for other sites to use. I started my own journey with PHP programming by using his scripts (and Larry's at Anole Computer) as learning examples, and I can't thank them enough for their sharing! With Tom's permission (and some encouragement), I've set up this page to have links to the carterlake scripts that I've modified for various puposes. Most of the mods have to do with formatting for XHTML 1.0-Strict output (even when the source page was not).

advforecast.php (NOAA Forecast for all NWS areas)

Note: as of 12-Mar-2007, the Western Region website (www.wrh.noaa.gov) now offers the point-printable forecasts in the same format as the other regional websites, so this script now works for WRH, ERH, SRH and CRH websites.

Tom's advforecast.php script takes the point-printable forecast from NOAA for Western, Eastern, Southern and Central region NOAA websites, and converts to a set of icons/conditions/temperatures and text forecast for inclusion on your webpage. My mods add XHTML 1.0-Strict output and the ability to handle a redirection for county forecasts (offered by www.crh.noaa.gov) in case a point-printable forecast is not available. See these threads for the erh2crh version (http://www.wxforum.net/viewtopic.php?p=3768, and http://www.weather-watch.com/smf/index.php/topic,22504.0.html ) The latest version of this script also offers automatic failover to the Zone forecast if the point-printable forecast is not available. Set "$NOAAZone = 'ssZnnn';" in the code for your NOAA warning zone.

The script supports the ?force=1 parameter to reload the cache file, and also a ?force=2 to load the cache file from the backup County Zone forecast.

To use, you'll need Tom's icon set uploaded in the /forecast/images directory on your website, and to set the $fileName variable inside the script to the URL for the point-printable forecast.

With V2.06 and up, the new parsing of the failover Zone forecast requires additional icons (available below) to be placed on your website.

Sample included with:

<?php
$doIncludeNWS = true;
include("advforecast2.php"); ?>

will show

National Weather Service Forecast for: Saratoga CA
Issued by: National Weather Service San Francisco Bay Area/Monterey, CA
Updated: 3:34 pm PST Feb 8, 2010
 
Overnight

Chance Showers. Chance for Measurable Precipitation 40%
Chance
Showers
Tuesday

Thunderstorms. Chance for Measurable Precipitation 80%
Tstms
Tuesday
Night

Chance Thunderstorms. Chance for Measurable Precipitation 30%
Chance
Tstms
Wednesday

Mostly Sunny
Mostly
Sunny
Wednesday
Night

Mostly Cloudy
Mostly
Cloudy
Thursday

Slight Chance Rain. Chance for Measurable Precipitation 20%
Slight Chc
Rain
Thursday
Night

Rain Likely. Chance for Measurable Precipitation 60%
Rain
Likely
Friday

Chance Rain
Chance
Rain
Friday
Night

Mostly Cloudy
Mostly
Cloudy
Lo 40 °F Hi 49 °F Lo 38 °F Hi 60 °F Lo 40 °F Hi 60 °F Lo 43 °F Hi 61 °F Lo 42 °F

 

Overnight
 
A chance of showers. Cloudy, with a low around 40. Light south wind. Chance of precipitation is 40%.
Tuesday
 
Showers and possibly a thunderstorm before 4pm, then a chance of showers and thunderstorms after 4pm. High near 49. Southeast wind 5 to 7 mph becoming northwest. Chance of precipitation is 80%.
Tuesday Night
 
A 30 percent chance of showers and thunderstorms before 10pm. Partly cloudy, with a low around 38. North northwest wind between 3 and 8 mph.
Wednesday
 
Mostly sunny, with a high near 60. Calm wind becoming northwest between 5 and 8 mph.
Wednesday Night
 
Mostly cloudy, with a low around 40. Northwest wind between 5 and 8 mph.
Thursday
 
A 20 percent chance of rain. Mostly cloudy, with a high near 60.
Thursday Night
 
Rain likely. Mostly cloudy, with a low around 43. Chance of precipitation is 60%.
Friday
 
A chance of rain. Mostly cloudy, with a high near 61.
Friday Night
 
Mostly cloudy, with a low around 42.
Saturday
 
Partly sunny, with a high near 62.
Saturday Night
 
Mostly cloudy, with a low around 43.
Sunday
 
Partly sunny, with a high near 63.
Sunday Night
 
A slight chance of rain. Partly cloudy, with a low around 43.
Presidents' Day
 
A slight chance of rain. Mostly cloudy, with a high near 64.

 

Forecast from NOAA-NWS for Saratoga CA.

You can also include it 'silently' and print just a few (or all) the contents where you'd like it on the page

<?php
$doPrintNWS = false;
require("advforecast2.php"); ?>

then on your page, the following code would display just the current and next time period forecast:

 <table>
<tr align="center" valign="top">
<?php print "<td>$forecasticons[0]</td><td>$forecasticons[1]</td>\n"; ?>
</tr>
<tr align="center" valign="top">
<?php print "<td>$forecasttemp[0]</td><td>$forecasttemp[1]</td>\n"; ?>
</tr>
</table>
Overnight

Chance Showers. Chance for Measurable Precipitation 40%
Chance
Showers
Tuesday

Thunderstorms. Chance for Measurable Precipitation 80%
Tstms
Lo 40 °F Hi 49 °F

Or if you'd like to include the immediate forecast with text for the next two cycles:

<table>
<tr valign="top">
<?php print "<td align=\"center\">$forecasticons[0]<br />$forecasttemp[0]</td>\n"; ?>
<?php print "<td align=\"left\" valign=\"middle\">$forecasttext[0]</td>\n"; ?>
</tr>
<tr valign="top">
<?php print "<td align=\"center\">$forecasticons[1]<br />$forecasttemp[1]</td>\n"; ?>
<?php print "<td align=\"left\" valign=\"middle\">$forecasttext[1]</td>\n"; ?>
</tr>
</table>

Overnight

Chance Showers. Chance for Measurable Precipitation 40%
Chance
Showers
Lo 40 °F
A chance of showers. Cloudy, with a low around 40. Light south wind. Chance of precipitation is 40%.
Tuesday

Thunderstorms. Chance for Measurable Precipitation 80%
Tstms

Hi 49 °F
Showers and possibly a thunderstorm before 4pm, then a chance of showers and thunderstorms after 4pm. High near 49. Southeast wind 5 to 7 mph becoming northwest. Chance of precipitation is 80%.

Download: advforecast2.php (V2.14 - 14-Jan-2009)
Download: Icon Set (upload to your website in the /forecast/images directory)
Download additonal icon set (upload to your website in /forecast/images directory) [required with V2.06+]


advisory.php (NOAA Advisory/Warning script)

This is a small mod to Tom's advisory script to eliminate some strange characters that began appearing just before the first line of the script output. This script is meant to be included in a webpage, not run as a separate page. (See the discussion at http://www.wxforum.net/viewtopic.php?t=539

Download: testadvisory.php