从以下两个文件我得到输出,(2000)1但它应该只(2000)
使用curl获得价值后,附加1会附加,但为什么呢?
balance.php
<?php
$url = "http://localhost/sms/app/user_balance.php";
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, 2);
curl_setopt($ch,CURLOPT_POSTFIELDS, "id=2&status=Y");
$result = curl_exec($ch);
curl_close($ch);
echo $result;
?>
Run Code Online (Sandbox Code Playgroud)
user_balance.php
<?php
$conn = mysql_connect("localhost","root","");
mysql_select_db("sms",$conn);
$user_id = $_REQUEST["id"];
$sql = "SELECT * FROM user_sms WHERE user_id='$user_id'";
$rec = mysql_query($sql);
if($row = mysql_fetch_array($rec)) {
$balance = $row["user_sms_balance"];
}
echo "(".$balance.")";
?>
Run Code Online (Sandbox Code Playgroud)
Ama*_*ali 14
从PHP手册文档curl_setopt():
CURLOPT_RETURNTRANSFER - 将值设置为TRUE以将传输作为curl_exec()的返回值的字符串返回,而不是直接输出.
如果你没有设置CURLOPT_RETURNTRANSFER选项TRUE,那么返回值curl_exec()将是操作的布尔值 - 1或0.为了避免它,你可以设置CURLOPT_RETURNTRANSFER为TRUE,如下所示:
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
Run Code Online (Sandbox Code Playgroud)