如何在PHP中将两个字符串组合在一起


How can I combine two strings together in PHP?

我实际上不知道如何描述我想要的东西,但我会向您展示:

例如:

$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;

另一种可能性是.=运算符。我正在将它用于大型SQL查询。

$string = "the color is ";
$string .= "red";
echo $string; // Gives: the color is red

将它们与.运算符连接:

$result = $data1 . " " . $data2;

或者使用字符串插值:

$result = "$data1 $data2";
$result = implode(' ', array($data1, $data2));

更通用。

另一种可用的形式是:

<?php
$data1 = "the color is";
$data2 = "red";
$result = "{$data1} {$data2}";

您可以尝试以下代码行

$result = $data1 . " " . $data2;

您可以使用PHP:来完成此操作

$txt1 = "the color is";
$txt2 = " red!";
echo $txt1 . $txt2;

这将组合两个字符串,并且输出将是:;颜色是红色的&";。

句点用于连接字符串。将两个字符串变量转换为单个变量的简单示例:

$full = $part1 . $part2;

在你的例子中,你想做的是:

$result = $data1 . ' ' . $data2;

您会注意到,我在两个变量之间添加了一个空格字符串。这是因为您最初的$data1没有以空格结尾。如果您在没有它的情况下组合它们,那么$result变量最终将看起来像the color isred

这应该适用于您:

$result = $data1 . " " . $data2;` 

参考:PHP字符串变量

试试这个:

$result = $data1 . $data2;
$s = "my name is ";
$s .= "keyur";
echo $s; 

结果:

my name is keyur

我不太清楚您的需求是什么,但基本上您可以分别定义这两个变量,然后将它们组合在一起。

$data1="The colour is ";
$data2="red";
$result=$data1.$data2;

通过这样做,您甚至可以将$data2声明为全局级别,这样您就可以在执行过程中更改其值。例如,它可以获得答案";红色";从复选框中选择。

这里已经提到的最简单的方法:

$result = $data1 . ' ' . $data2;

在某些情况下,您可能需要使用join((或内爆((等函数。这两个函数的作用相同,就是将数组项转换为字符串。

示例1:

$result = join(' ', [$data1, $data2]);

示例2:

$result = implode(' ', [$data1, $data2]);
$result = $data1 . ' ' . $data2;

最好的方式。

$result = "$data1 $data2";

$result = "{$data1} {$data2};

您可以使on数组具有空值,而不是空值;并使用过滤器和内爆来制作完整的句子

$str1 = 'hello';
$str2 = 'my name';
$str3 = 'vijay';
$str4 = '';
$fullsentence = array_filter([$str1, $str2, $str3, $str4]);
echo implode(' ', $fullsentence);
  1. 连接字符串(每个字符串之间的空格(

    代码段:

    <?php
        $txt1 = "Sachin";
        $txt2 = "Tendulkar";
        $result = $txt1 . $txt2 ;
        echo $result . "'n";
    ?>
    

    输出:SachinTendulkar

  2. 连接存在空间的字符串

    代码段:

     <?php
         $txt1 = "Sachin";
         $txt2 = "Tendulkar";
         $result = $txt1 . " " . $txt2;
         echo $result . "'n";
     ?>
    

    输出:Sachin Tendulkar

  3. 使用printf函数连接字符串。

    代码段:

     <?php
         $data1 = "Sachin";
         $data2 = "Tendulkar";
         printf("%s%s'n", $data1, $data2);
         printf("%s %s'n", $data1, $data2);
     ?>
    

    输出:

     SachinTendulkar
     Sachin Tendulkar
    

在PHP:中将两个字符串组合在一起

$result = $data1 . ' ' . $data2;

试试这个。我们可以在PHP中添加一个带有句点(.(符号的字符串

$data1 = "the color is";
$data2 = "red";
echo $data1 . $data2; // The color isred
echo $data1 . " " . $data2; // The color is red (we have appended space)