在PHP中将变量连接到字符串失败

时间:2018-09-26 10:57:40

标签: php

对不起,这是基本知识。当我使用此PHP代码时,效果很好:

$data = '{"reportID":1092480021}';

但是,当我运行这样的URL时:

http://localhost:8000/new/reportget.php?type=1092480021

并使用以下PHP代码:

$reportref = $_GET['type'];
$data = '{"reportID:".$reportref."}"';

我收到错误

Error_description:reportID is required

我认为将变量连接到字符串的方式有误,但是我不明白我要去哪里。

4 个答案:

答案 0 :(得分:3)

您的字符串引用不正确。要匹配第一个示例中的格式,请使用:

$data = '{"reportID":' . $reportref.'}';

请注意,最后一个花括号上没有双引号。

更好:

$reportref = 1092480021;
$data = [ 'reportId' => $reportref ];
var_dump(json_encode($data));

输出:

string(23) "{"reportId":1092480021}"

答案 1 :(得分:2)

为了简单理解和理解,您可以尝试以下方法: $data = "{\"reportID\":$reportref}";

认为应该解决

答案 2 :(得分:1)

像这样使用它

data = '{"reportID:"'.$reportref.'"}"';

答案 3 :(得分:1)

这是行不通的,因为您将所有值都包装在单引号中,并且在连接$reprtref时直接放置.$reportref而不关闭第一个单引号并将值连接起来之后你忘了再开一个单引号

'{"reportID:".$reportref."}"';

正确值为

'{"reportID:"' . $reportref . '"}"';

并匹配您指定$ data值的方式必须是这样

'{"reportID":' . $reportref . '}';