如何在PHP中将两个字符串组合在一起?
2022-08-30 06:32:36
我实际上不知道如何描述我想要的东西,但我会告诉你:
例如:
$data1 = "the color is";
$data2 = "red";
我应该做什么(或处理),所以$result是和的组合?$data1
$data2
期望结果:
$result = "the color is red";
我实际上不知道如何描述我想要的东西,但我会告诉你:
例如:
$data1 = "the color is";
$data2 = "red";
我应该做什么(或处理),所以$result是和的组合?$data1
$data2
期望结果:
$result = "the color is red";
$result = $data1 . $data2;
这称为字符串串联。但是,您的示例缺少空间,因此具体而言,您需要:
$result = $data1 . ' ' . $data2;
有几种方法可以将两个字符串连接在一起。
使用串联运算符 .
(和 .=
)
在 PHP 中是串联运算符,它返回其右参数和左参数的串联.
$data1 = "the color is";
$data2 = "red";
$result = $data1 . ' ' . $data2;
如果要将字符串追加到另一个字符串,请使用运算符:.=
$data1 = "the color is ";
$data1 .= "red"
复杂(卷曲)语法/双引号字符串
在PHP中,双引号字符串中包含的变量值(即它们的值被“交换”为变量)。这意味着您可以将变量放在字符串的位置,并在它们之间放置一个空格。大括号可明确变量的位置。
$result = "{$data1} {$data2}";
注意:这也可以在没有大括号的情况下工作:
$result = "$data1 $data2";
您还可以在字符串中连接数组值:
$arr1 = ['val' => 'This is a'];
$arr2 = ['val' => 'test'];
$variable = "{$arr1['val']} {$arr2['val']}";
使用 sprintf()
或 printf()
sprintf()
允许我们使用强大的格式化选项来格式化字符串。对于这种简单的串联来说,这是过分的,但是当您有一个复杂的字符串和/或想要对数据进行一些格式化时,它很方便。
$result = sprintf("%s %s", $data1, $data2);
printf()
执行相同的操作,但会立即显示输出。
printf("%s %s", $data1, $data2);
// same as
$result = sprintf("%s %s", $data1, $data2);
echo $result;
黑杰克
Heredocs也可用于将变量组合成一个字符串。
$result= <<<EOT
$data1 $data2
EOT;
将 、
与 echo() 一起使用
这仅在回显内容而不分配给变量时才有效。但是,您可以使用逗号来分隔 PHP 回显的表达式列表,并使用具有一个空格的字符串作为这些表达式之一:
echo $data1, ' ', $data2;