PHP:字符串运算符

1. 连接运算符(.)

这是PHP中最主要的字符串运算符,用于将两个或多个字符串连接在一起。

<?php
$str1 = "Hello";
$str2 = " World";
$result = $str1. $str2;
echo $result; // 输出 "Hello World"
?>

可以连接多个字符串。

<?php
$str3 = "Good";
$str4 = "bye";
$finalStr = $str1. $str2. $str3. $str4;
echo $finalStr; // 输出 "Hello WorldGoodbye"
?>

也可以连接字符串和变量(变量的值为字符串类型)。

<?php
$name = "John";
$greeting = "Hello, ". $name;
echo $greeting; // 输出 "Hello, John"
?>

2. 复合连接赋值运算符(.=)

它是连接运算符(.)和基本赋值运算符(=)的组合。其作用是将右边的字符串连接到左边的字符串变量上,并将结果重新赋给左边的变量。

<?php
$str = "Hello";
$str.= " World";
echo $str; // 输出 "Hello World"
?>

如果变量初始为空字符串,多次使用复合连接赋值运算符可以逐步构建一个较长的字符串。

<?php
$text = "";
$text.= "This ";
$text.= "is ";
$text.= "a ";
$text.= "sentence.";
echo $text; // 输出 "This is a sentence."
?>

3. 字符串比较运算符(用于比较字符串关系)

等于(==)和全等于(===)运算符

等于运算符(==)比较两个字符串的值是否相等,在比较时会进行类型转换。

<?php
$str5 = "5";
$num = 5;
if ($str5 == $num) {
echo "Equal";
}
// 会输出 "Equal",因为在比较时会将字符串 "5" 转换为数字5后再比较
?>

全等于运算符(===)不仅比较值,还比较数据类型。

<?php
$str5 = "5";
$num = 5;
if ($str5 === $num) {
// 这里不会执行,因为数据类型不同,$str5是字符串,$num是整数
}
?>

不等于(!=或<>)和不全等于(!==)运算符

不等于运算符(!=或<>)用于判断两个字符串的值是否不相等,在使用!=时同样会进行类型转换。

<?php
$str6 = "Hello";
$str7 = "Goodbye";
if ($str6!= $str7) {
echo "Not equal";
}
// 会输出 "Not equal"
?>

不全等于运算符(!==)判断两个字符串的值或类型是否不相同。

<?php
$str8 = "5";
$num2 = 5;
if ($str8!== $num2) {
echo "Not identical";
}
// 会输出 "Not identical",因为类型不同
?>

大于(>)和小于(<)运算符

按照字典序(字符编码顺序)比较两个字符串的大小。

<?php
$str9 = "Apple";
$str10 = "Banana";
if ($str9 < $str10) {
echo "Apple comes before Banana in alphabetical order";
}
// 会输出相应结果,因为在字典序中 "Apple" 在 "Banana" 之前
?>

PHP编程语言基础