Php 在curl_init()中将变量插入url时的语法

Php 在curl_init()中将变量插入url时的语法,php,curl,syntax,Php,Curl,Syntax,我需要在链接“”中插入一个id变量(而不是“9727866”),但语法似乎不正确 无论我做什么,它似乎都不接受我的变量。。有人知道怎么做吗 $params = array( "amount" => 100, "order_id" => 999999 ); $data_st

我需要在链接“”中插入一个id变量(而不是“9727866”),但语法似乎不正确

无论我做什么,它似乎都不接受我的变量。。有人知道怎么做吗

   $params = array(
       "amount"            => 100,
       "order_id"       => 999999
   );                                                                    
   $data_string = http_build_query($params, '&'); 

   $headers = array(
          'Accept-Version: v10',
          'Accept: application/json', 
          'Authorization: Basic ' . base64_encode(":HIDDEN_API_KEY")
      );                                                                                  

   $ch = curl_init('https://api.quickpay.net/payments/9727866/link');                                                                      
   curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");                                                                     
   curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);                                                                  
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);      
   curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);     
   curl_setopt($ch, CURLOPT_HEADER, true);
   curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

   $result = curl_exec($ch);

   if(!curl_exec($ch)){
       die('Error: "' . curl_error($ch) . '" - Code: ' . curl_errno($ch));
   }
   curl_close($ch);

   print_r($result);

可能是因为你用的是单引号。请尝试以下任一操作:

 $ch = curl_init("https://api.quickpay.net/payments/$variable/link"); 


任何能让你的船漂浮的东西。

$ch=curl\u init(“?仅仅因为它是一个url并不能让它神奇地特别。它是文本,就像PHP中的任何其他文本一样。“无论我做什么”你到底在哪里做的事情是为了让它工作?嗯。。。你的意思是:$ch=curl_init(“{$payment_id}/link”);我的编辑器没有将其重新识别为变量…@spazoid双引号
不是单引号
啊,哈哈,我不敢更改QOUTIONS,因为这是一些第三方代码,我通常不了解它的工作原理。。。我想知道为什么PSP会在他们的示例中使用单个qoutes,而它总是必须包含一个变量才能工作:)无论如何,感谢您快速有效的帮助!你忘了
sprintf(“https://api.quickpay.net/payments/%s/link“,$可变)
内爆(“”,['https://api.quickpay.net/payments/“,$variable,”/link'])$ch = curl_init("https://api.quickpay.net/payments/{$variable}/link");
$ch = curl_init("https://api.quickpay.net/payments/" . $variable . "/link");
$str = "https://api.quickpay.net/payments/" . $variable . "/link";
$ch = curl_init($str);
sprintf("https://api.quickpay.net/payments/%s/link", $variable);