将PHP变量传递给Json

将PHP变量传递给Json,php,json,request,postman,Php,Json,Request,Postman,如果我使用PHP变量定义值,下面的代码似乎不起作用。另一方面,如果我硬编码值,它就可以正常工作 $body->append('{ "username": "$username", "password": "$password", "attributes": { "name": "$name", "surname": "$surname", "email": "$mail" } }'); 如果要在PHP中传递字

如果我使用PHP变量定义值,下面的代码似乎不起作用。另一方面,如果我硬编码值,它就可以正常工作

$body->append('{
    "username": "$username",
    "password": "$password",
    "attributes": {
        "name": "$name",
        "surname": "$surname",
        "email": "$mail"
    }
}');

如果要在PHP中传递字符串内的变量,必须使用双引号而不是单引号

下面的代码应该可以工作,它是相同的,但是用而不是“包装,并用\”转义了原始引号

然而,这样做可能会变得非常混乱,相反,您可以使用连接。在字符串和变量之间

'"username": "' . $username . '"

或者只使用对您来说稍微优雅一点的变量。

如果您想在PHP中的字符串中传递变量,您必须使用双引号而不是单引号

下面的代码应该可以工作,它是相同的,但是用而不是“包装,并用\”转义了原始引号

然而,这样做可能会变得非常混乱,相反,您可以使用连接。在字符串和变量之间

'"username": "' . $username . '"

或者只使用对您的目的来说稍微优雅一点的方法。

将其制作一个数组,然后将其传递给您的函数

$data = [
    "username" => $username,
    "password" => $password,
    "attributes" => [
        "name"  => $name,
        "surname"=> $surname,
        "email" => $mail,
    ],
];
$body->append(json_encode($data));

创建一个数组,然后将其传递给函数

$data = [
    "username" => $username,
    "password" => $password,
    "attributes" => [
        "name"  => $name,
        "surname"=> $surname,
        "email" => $mail,
    ],
];
$body->append(json_encode($data));

在中不能使用单引号json@TrueTiem我的错误,切换到了转义双引号:不能在中使用单引号json@TrueTiem我的错误,切换到转义双引号: