↓ Output (cached 60s)


<!DOCTYPE html>
<html lang="en">
  <head>
    <style type='text/css'>
      body {
        font-family: monospace;
        white-space: nowrap;
      }
      table {
        border-collapse: collapse;
      }
      th,td {
        border: 1px solid #eee;
        padding: 10px;
        vertical-align:top;
      }
      th:nth-child(1),th:nth-child(2) {
        text-align: left;
      }
      th:nth-child(3),td:nth-child(3) {
        text-align: center;
      }
      th:nth-child(4),td:nth-child(4) {
        text-align: right;
      }
    </style>
  </head>
  <body>
    <?php
      
require("OpenLDBWS.php");
      
$OpenLDBWS = new OpenLDBWS("YOUR_ACCESS_TOKEN");
      
$response $OpenLDBWS->GetDepBoardWithDetails(10,"GTW");
      
$template["header"] = "
        <table>
          <thead>
            <tr>
              <th>Time</th>
              <th>Destination</th>
              <th>Platform</th>
              <th>Expected</th>
            </tr>
          </thead>
          <tbody>
        "
;
      
$template["row"] = "
            <tr>
              <td>{std}</td>
              <td><strong>{destination}</strong>{detail}</td>
              <td>{platform}</td>
              <td>{etd}</td>
            </tr>
      "
;
      
$template["footer"] = "
          </tbody>
        </table>
      "
;

      if (isset(
$response->GetStationBoardResult))
      {
        print 
"<p><strong>".$response->GetStationBoardResult->locationName."</strong> Departures</p>";

        if (isset(
$response->GetStationBoardResult->nrccMessages))
        {
          print 
"<ul>";

          foreach(
$response->GetStationBoardResult->nrccMessages->message as $message)
          {
            print 
"<li>".$message->{"_"}."</li>";
          }

          print 
"</ul>";
        }

        if (isset(
$response->GetStationBoardResult->trainServices->service))
        {
          print 
$template["header"];

          foreach(
$response->GetStationBoardResult->trainServices->service as $service)
          {
            
$row $template["row"];

            
$destinations = array();

            foreach(
$service->destination->location as $location)
            {
              
$destinations[] = $location->locationName;
            }

            
$row str_replace("{std}",$service->std,$row);

            
$row str_replace("{destination}",implode(" and ",$destinations),$row);

            
$row str_replace("{platform}",(isset($service->platform)?$service->platform:"&nbsp;"),$row);

            
$row str_replace("{etd}",$service->etd,$row);

            
$detail "";

            if ((
$service->etd != "Cancelled") && isset($service->subsequentCallingPoints))
            {
              foreach(
$service->subsequentCallingPoints->callingPointList as $k => $callingPointList)
              {
                
$callingPoints $callingPointList->callingPoint;

                if (
$k)
                {
                  
$callingPoint array_shift($callingPoints);

                  
$detail .= "<p>Train divides at <strong>".$callingPoint->locationName."</strong></p>";
                }

                
$detail .= "<p>CALLING AT:</p>";

                foreach(
$callingPoints as $callingPoint)
                {
                  
$detail .= $callingPoint->locationName." (".(($callingPoint->st == "On time")?$callingPoint->et:$callingPoint->st).")<br />";
                }
              }

              
$detail .= "<p>".$service->operator.(isset($service->length)?" (".$service->length." coaches)":"")."</p>";
            }

            
$row str_replace("{detail}",$detail,$row);

            print 
$row;
          }

          print 
$template["footer"];
        }
        else
        {
          print 
"<p>No services within 2 hours.</p>";
        }
      }
    
?>
  </body>
</html>

Gatwick Airport Departures

  • Trains across the Gatwick Express / Great Northern / Southern / Thameslink network may be cancelled, delayed by up to 45 minutes or revised. Latest information can be found in Status and Disruptions.
  • Trains between Horsham and Arundel may be delayed by up to 50 minutes or revised. Latest information can be found in Status and Disruptions.
Time Destination Platform Expected
21:09 Portsmouth Harbour and Bognor Regis

CALLING AT:

Three Bridges (21:14)
Crawley (21:18)
Horsham (21:27)
Barnham (21:59)
Chichester (22:07)
Southbourne (22:15)
Emsworth (22:18)
Havant (22:22)
Hilsea (22:29)
Fratton (22:33)
Portsmouth & Southsea (22:37)
Portsmouth Harbour (22:41)

Train divides at Horsham

CALLING AT:

Christs Hospital (21:39)
Billingshurst (21:45)
Pulborough (21:52)
Amberley (21:58)
Arundel (22:02)
Ford (22:08)
Barnham (22:13)
Bognor Regis (22:21)

Southern (12 coaches)

6 21:36
21:13 London Victoria

CALLING AT:

East Croydon (21:28)
Clapham Junction (21:37)
London Victoria (21:45)

Southern

2 21:24
21:17 Horsham

CALLING AT:

Three Bridges (21:22)
Crawley (21:27)
Ifield (21:30)
Littlehaven (21:36)
Horsham (21:40)

Thameslink (12 coaches)

3 On time
21:19 Peterborough

CALLING AT:

Horley (21:21)
Redhill (21:29)
Merstham (21:33)
Coulsdon South (21:38)
East Croydon (21:45)
London Bridge (22:00)
London Blackfriars (22:06)
City Thameslink (22:08)
Farringdon (22:11)
London St Pancras (Intl) (22:15)
Finsbury Park (22:22)
Stevenage (22:43)
Hitchin (22:50)
Arlesey (22:56)
Biggleswade (23:01)
Sandy (23:05)
St Neots (23:11)
Huntingdon (23:19)
Peterborough (23:37)

Thameslink

1 On time
21:20 Littlehampton

CALLING AT:

Three Bridges (21:24)
Haywards Heath (21:33)
Burgess Hill (21:39)
Hassocks (21:43)
Preston Park (21:50)
Hove (21:53)
Portslade (21:57)
Southwick (22:00)
Shoreham-by-Sea (22:03)
Lancing (22:08)
Worthing (22:12)
West Worthing (22:14)
Durrington-on-Sea (22:17)
Goring-by-Sea (22:20)
Angmering (22:24)
Littlehampton (22:34)

Southern (12 coaches)

6 On time
21:26 London Victoria

CALLING AT:

East Croydon (21:41)
Clapham Junction (21:51)
London Victoria (21:58)

Southern (8 coaches)

4 Delayed
21:26 Ore

CALLING AT:

Haywards Heath (21:37)
Wivelsfield (21:42)
Plumpton (21:49)
Cooksbridge (21:52)
Lewes (21:56)
Polegate (22:09)
Eastbourne (22:17)
Hampden Park (22:31)
Pevensey & Westham (22:37)
Cooden Beach (22:44)
Collington (22:47)
Bexhill (22:49)
St Leonards Warrior Square (22:56)
Hastings (22:59)
Ore (23:03)

Southern (8 coaches)

7 21:29
21:31 Brighton

CALLING AT:

Haywards Heath (21:41)
Brighton (21:57)

Gatwick Express (4 coaches)

6 On time
21:32 London Victoria

CALLING AT:

East Croydon (21:48)
Clapham Junction (21:58)
London Victoria (22:06)

Southern (8 coaches)

5 On time
21:35 Brighton

CALLING AT:

Three Bridges (21:39)
Balcombe (21:46)
Haywards Heath (21:51)
Wivelsfield (21:56)
Burgess Hill (21:58)
Hassocks (22:02)
Preston Park (22:08)
Brighton (22:13)

Thameslink

7 On time