This is how I have solved above problem
function file_get_contents_curl($url) {
$ch = curl_init();
$timeout = 5;
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$data = curl_exec($ch);
curl_close($ch);
return $data;
}
$mapquest_key = "YOUR_API_KEY";
$source_address = "6100 Richmond Ave, Houston TX 77057";
$sLat = "29.73189";
$sLan = "-95.48736";
$plan_add = $plan['address1']." ".$plan['address2']." ".$plan['state']." ".$plan['city']." ".$plan['zip'];
# Step 1: Mapquest API url to get session_key and lng and lat
$mapquest_url1 = "http://www.mapquestapi.com/directions/v1/route?key=".$mapquest_key."&outFormat=json";
$mapquest_url1 .= "&from=".urlencode($wocg_address)."&to=".urlencode($plan_add);
$mapquest_data = file_get_contents_curl($mapquest_url1);
$mapquest_data_array = json_decode($mapquest_data);
$session_id = isset($mapquest_data_array->route->sessionId) ? $mapquest_data_array->route->sessionId : "";
$eLat = isset($mapquest_data_array->route->locations[1]->latLng->lat) ? $mapquest_data_array->route->locations[1]->latLng->lat : "";
$eLan = isset($mapquest_data_array->route->locations[1]->latLng->lng) ? $mapquest_data_array->route->locations[1]->latLng->lng : "";
# Step 2: Get images based on start and end location and session id
if(!empty($session_id) && !empty($eLat) && !empty($eLan)) {
$mapquest_url2 = "http://www.mapquestapi.com/staticmap/v3/getmap?key=".$mapquest_key;
$mapquest_url2 .= "&size=710,300&type=map";
$mapquest_url2 .= "&session=".$session_id;
$mapquest_url2 .= "&scenter=".$sLat.",".$sLan;
$mapquest_url2 .= "&ecenter=".$eLat.",".$eLan;
grab_image($mapquest_url2, $upload_dir.$plan['ID'].".png");
} else {
# If failure with mapquest then scrap image from google map
$plan_address = urlencode($plan_add);
$url = "http://maps.googleapis.com/maps/api/staticmap?size=710x300&sensor=true";
$url .= "&path=color:0x0000ff|weight:10|77001+TX+Houston+USA";
$url .= "|".$plan_address;
$url .= "&markers=color:red|label:A|77001+TX+Houston+USA";
$url .= "&markers=color:green|label:B|".$plan_address;
grab_image($url, $upload_dir.$plan['ID'].".png");
}