Я действительно не знаю, как описать то, что я хотел, но я покажу вам:
Например:
$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";
Используйте 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;
Heredoc
Heredocs также может использоваться для объединения переменных в строку.
$result= <<<EOT
$data1 $data2
EOT;
Используйте ,
с echo()
Это работает только при повторении содержимого и не присваивании переменной. Но вы можете использовать запятую, чтобы отделить список выражений для PHP для эха и использовать строку с одним пробелом в качестве одного из этих выражений:
echo $data1, ' ', $data2;
Никто не упомянул об этом, но есть и другая возможность. Я использую его для огромных запросов sql. Вы можете использовать. = Operator:)
$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;
$result = $data1 . $data2;
попробуйте это
Период времени используется для конкатенации строк. Простой пример превращения двух строковых переменных в одну переменную:
$full = $part1 . $part2;
В вашем примере вы хотите:
$result = $data1 . ' ' . $data2;
Вы заметите, что я добавил строку между двумя переменными. Это связано с тем, что исходный $data1
не заканчивается пробелом. Если бы вы их не объединили, ваша переменная $result
выглядела бы как the color isred
.
$s = "my name is ";
$s .= "keyur";
echo $s;
результат:
my name is keyur
Вы можете сделать это с помощью PHP:
$txt1 = "the color is";
$txt2 = " red!";
echo $txt1.$txt2;
Это объединит две строки и путёт будет: "цвет красный!".
Это очень просто. Просто используйте
$result = $data1 . $data2;
В PHP .
(concatenate) как дополнение.
Многие ответы верны. Но вы можете столкнуться с проблемой, когда хотите, чтобы строки были разделены линией. Трюк делает что-то вроде этого:
$result = $data1 . "\r\n" . $data2;
Я не совсем понимаю, каковы ваши требования, но в основном вы можете отдельно определить две переменные, а затем объединить их вместе.
$data1="The colour is ";
$data2="red";
$result=$data1.$data2;
Таким образом, вы можете даже объявить $data2 как глобальный уровень, чтобы вы могли изменить его значение во время выполнения, например, он мог получить ответ "красный" из флажка.
Я считаю, что самый эффективный способ:
$data1 = "the color is";
$data2 = "red";
$result = $data1 . ' ' . $data2;
Если вы хотите реализовать локализацию, вы можете сделать что-то вроде этого:
$translationText = "the color is %s";
$translationRed = "red";
$result = sprintf($translationText, $translationRed);
Это немного медленнее, но оно не предполагает грамматических правил.
его очень простая
с помощью. (точка) мы можем комбинировать две или более переменной в php
<?php
$data1 = "the color is";
$data2 = "red";
echo $data1." ".$data2;
?>
1.Concatenate строка (пробел между каждой строкой)
Фрагмент кода:
<?php
$txt1 = "Sachin";
$txt2 = "Tendulkar";
$result = $txt1.$txt2 ;
echo $result. "\n";
?>
Выход: SachinTendulkar
2.Concatenate строка, где существует пространство
Фрагмент кода:
<?php
$txt1 = "Sachin";
$txt2 = "Tendulkar";
$result = $txt1." ".$txt2;
echo $result. "\n";
?>
Вывод: Sachin Tendulkar
- Объединение строки с помощью функции printf.
Фрагмент кода:
<?php
$data1 = "Sachin";
$data2 = "Tendulkar";
printf("%s%s\n",$data1, $data2);
printf("%s %s\n",$data1, $data2);
?>
Вывод:
Тендулкар
Сахин Тендулкар
Насколько я знаю, у вас есть 2 способа сделать это:
. оператор, который означает конкатенацию:
echo $var1 . ' ' . $var2;
оператор, который означает несколько параметров:
echo $var1 , ' ' , $var2;
В этом случае оба выводятся так же, поскольку echo
принимает несколько параметров. Но в случае return
, где он принимает только 1, работает только '.'
.
$result=$data1.' '.$data2;
Таким образом, вы можете делать.
$data1 = "Hello";
$data2 = "Moto!";
$result = $data1.$data2;
echo $result;
Мы получим результат как Hello Moto!, поскольку String, хранящийся в $data1
и в $data2
, объединяются друг с другом один за другим с помощью . (точка)
$email_to = implode(', ', array($addr1, $addr2, addr3));
нет необходимости вif($addr != '')
т. д.