将数据发布到PHP脚本然后处理它

I'm trying to make a HTTP POST request to my PHP script. However, it doesn't seem to be retrieving the request data.

To simulate a POST request, I used Request Maker and sent over a url of http://php-agkh1995.rhcloud.com/lta.php and a request data of var1=65059. Using the default url in the else statement works perfectly fine but not the other

I'm suspecting the request headers to be the fault unless there's a major flaw in my code

lta.php

$stopid=$_POST['var1'];
$defurl = ""; // Default url

if(!empty($stopid)){
$defurl = 'http://datamall2.mytransport.sg/ltaodataservice/BusArrival?BusStopID=$stopid';
} else {
 $defurl = 'http://datamall2.mytransport.sg/ltaodataservice/BusArrival?BusStopID=83139';
}   

$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $defurl,
CURLOPT_USERAGENT => 'Ashton',
CURLOPT_HTTPHEADER => array('AccountKey: ********', 'UniqueUserId: ******', 'accept: application/json')
));

$resp = curl_exec($curl);
curl_close($curl);
echo($resp); // To test if data is displayed or not 
return $resp;  

Request headers sent

POST /lta.php HTTP/1.1
Host: php-agkh1995.rhcloud.com
Accept: */*
Content-Length: 10
Content-Type: application/x-www-form-urlencoded

You could use array_key_exists to test the existence of the POST variable

if(array_key_exists($_POST,'var1')){
    $stopid=$_POST['var1'];
    $defurl = "http://datamall2.mytransport.sg/ltaodataservice/BusArrival?BusStopID=$stopid";
} else { 
 ..
}

PS : if your $defurl is set to the else case value by default you don't even need the else clause