Php 在curl_init()中将变量插入url时的语法
我需要在链接“”中插入一个id变量(而不是“9727866”),但语法似乎不正确 无论我做什么,它似乎都不接受我的变量。。有人知道怎么做吗Php 在curl_init()中将变量插入url时的语法,php,curl,syntax,Php,Curl,Syntax,我需要在链接“”中插入一个id变量(而不是“9727866”),但语法似乎不正确 无论我做什么,它似乎都不接受我的变量。。有人知道怎么做吗 $params = array( "amount" => 100, "order_id" => 999999 ); $data_st
$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'])可能还有一些我没想到的非常可怕的正则表达式yet@Steve是的,不妨添加sprintf。顺便说一句,你在内爆时缺少一个结束括号。
$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);