Php 通过GET-in-cURL简单地发布变量

Php 通过GET-in-cURL简单地发布变量,php,curl,Php,Curl,所以我想在这里制作一个小API。我将只通过header(get params)发送一些信息,而不使用任何POST参数。 这是我写的代码 function sendSMS($message, $number) { /*** Connection Params **/ /*** Build the request parameters ***/ $service="sms_api_call_receiver.php"; $number="1212"; $message="asas

所以我想在这里制作一个小API。我将只通过header(get params)发送一些信息,而不使用任何POST参数。 这是我写的代码

function sendSMS($message, $number)
{
  /*** Connection Params **/
  /*** Build the request parameters ***/
  $service="sms_api_call_receiver.php";
  $number="1212";
  $message="asas";
  $result = sendPost("https://www.domain.com/smsapp/" . $service . "?message=".urlencode($message)."&number=".$number);
  return $result;
}//function

function sendPost($Url)
{
   // Initialisation
   $ch=curl_init();
   // Set parameters
   curl_setopt($ch, CURLOPT_URL, $Url);
   // Return a variable instead of posting it directly
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
   // Active the POST method
   //curl_setopt($ch, CURLOPT_POST, 1) ;
   // Request
   //curl_setopt($ch, CURLOPT_POSTFIELDS, $strRequest);
   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
   curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
   // execute the connexion
   $result = curl_exec($ch);
   // Close it
   //return curl_error($ch);
   curl_close($ch);
   return $result;
}
在接收方文件中,我有以下代码:-

if(isset($_GET['message']))
{
    return true;
}
else
{
    return "12212";
}
但当我测试时,我得到的输出是:-

string '' (length=0)
我做错了什么

故障排除 我试着看看
curl\u error
是否返回了什么。但我什么也看不见。
这里的任何建议都会很有帮助。

你确定那里出了问题吗?如果设置了
$\u GET['message']
(在您的测试示例中就是这样),脚本(sms\u api\u call\u receiver.php)将返回true并停止执行


因为它是HTTP请求,并且响应为空,所以您将在长度为0的函数字符串中得到结果。

要在sendSMS中得到响应,您需要在sms\u api\u call\u receiver.php中打印,而不是使用return

var\u dump($\u get)
,请确保这些参数实际上都已通过。好的,如果我返回类似于
的内容,请不要返回true,而是返回“Ok”
。我可以用0长度的字符串来代替吗?当然可以。无论您在那里打印什么,都将通过
sendSMS()
传回。正确的方法是
echo“ok”