What symbol do you use when concatenating strings in php?

There are two string operators. The first is the concatenation operator ('.'), which returns the concatenation of its right and left arguments. The second is the concatenating assignment operator ('.='), which appends the argument on the right side to the argument on the left side. Please read Assignment Operators for more information.

$a "Hello ";
$b $a "World!"// now $b contains "Hello World!"$a "Hello ";
$a .= "World!";     // now $a contains "Hello World!"
?>

K.Alex

9 years ago

As for me, curly braces serve good substitution for concatenation, and they are quicker to type and code looks cleaner. Remember to use double quotes (" ") as their content is parced by php, because in single quotes (' ') you'll get litaral name of variable provided:

$a

= '12345';// This works:
echo "qwe{$a}rty"; // qwe12345rty, using braces
echo "qwe" . $a . "rty"; // qwe12345rty, concatenation used

// Does not work:

echo 'qwe{$a}rty'; // qwe{$a}rty, single quotes are not parsed
echo "qwe$arty"; // qwe, because $a became $arty, which is undefined?>

anders dot benke at telia dot com

18 years ago

A word of caution - the dot operator has the same precedence as + and -, which can yield unexpected results.

Example:

$var = 3;

echo "Result: " . $var + 3;
?>

The above will print out "3" instead of "Result: 6", since first the string "Result3" is created and this is then added to 3 yielding 3, non-empty non-numeric strings being converted to 0.

To print "Result: 6", use parantheses to alter precedence:

$var = 3;

echo "Result: " . ($var + 3);
?>

Stephen Clay

16 years ago

"{$str1}{$str2}{$str3}"; // one concat = fast
 
$str1. $str2. $str3;   // two concats = slow
?>
Use double quotes to concat more than two strings instead of multiple '.' operators.  PHP is forced to re-concatenate with every '.' operator.

hexidecimalgadget at hotmail dot com

13 years ago

If you attempt to add numbers with a concatenation operator, your result will be the result of those numbers as strings.

echo "thr"."ee";           //prints the string "three"
echo "twe" . "lve";        //prints the string "twelve"
echo 1 . 2;                //prints the string "12"
echo 1.2;                  //prints the number 1.2
echo 1+2;                  //prints the number 3?>

mariusads::at::helpedia.com

14 years ago

Be careful so that you don't type "." instead of ";" at the end of a line.

It took me more than 30 minutes to debug a long script because of something like this:

echo 'a'.
$c = 'x';
echo 'b';
echo 'c';
?>

The output is "axbc", because of the dot on the first line.

biziclop

11 days ago

Some bitwise operators (the and, or, xor and not operators: & | ^ ~ ) also work with strings too since PHP4, so you don't have to loop through strings and do chr(ord($s[i])) like things.

See the documentation of the bitwise operators: https://www.php.net/operators.bitwise

(
  (
'23456787654' ^ 'zVXYYhoXDYP'), // 'Hello_World'
 
('(!($)^!)@$@' | '@ddhfIvn2H$'), // 'hello_world'
 
('{}~|o!Wo{|}' & 'Lgmno|Wovmf'), // 'Hello World'
 
(~'<0-14)(98'  &   '}}}}}}}}}'// 'AMPLITUDE'
); ?>

Live demo: https://3v4l.org/MnFeb

How do you concatenate strings in PHP?

The first is the concatenation operator ('. '), which returns the concatenation of its right and left arguments. The second is the concatenating assignment operator ('. ='), which appends the argument on the right side to the argument on the left side.

What is the symbol for concatenating strings?

The + (plus) operator is often overloaded to denote concatenation for string arguments: "Hello, " + "World" has the value "Hello, World" .

What symbol do you use to join concatenate strings and variables in PHP?

The PHP concatenation operator: . The PHP string concatenation operator is a period. . . If you've programmed in other language, you may have experienced using the + (plus) symbol to put two (or more) strings together.

Which is a concatenation operator in PHP?

1. Concatenation Operator ("."): In PHP, this operator is used to combine the two string values and returns it as a new string.