PHP双引号

Ser*_*min 0 php printing double-quotes

我有这个代码:

<?php

$attribute = 'name';
$value = 'John';

print_r("$attribute$value");
Run Code Online (Sandbox Code Playgroud)

它输出:

nameJohn
Run Code Online (Sandbox Code Playgroud)

我想继续使用""(双引号)输出:

name_value: John
Run Code Online (Sandbox Code Playgroud)

我试过了:

print_r("$attribute_value: $value");
Run Code Online (Sandbox Code Playgroud)

但当然它不起作用(没有变量$ attribute_value).

我该怎么做?

Joh*_*nde 6

使用花括号来表示什么是变量,什么是字符串:

print_r("{$attribute}_value: $value");
Run Code Online (Sandbox Code Playgroud)

您还可以使用printf()格式化字符串(或者如果您希望将其捕获到变量,则使用sprintf()`):

printf("%s_value: %s", $attribute, $value);
Run Code Online (Sandbox Code Playgroud)