运算符
算术/比较/逻辑/字符串运算符、太空船 <=>、?? 空合并
运算符
PHP 运算符大部分和 C/Java 一致,但有三个 PHP 独有的:. 字符串连接、<=> 太空船、?? 空合并。
学完本章你将: 掌握算术/比较/逻辑/字符串运算符、特色运算符。
基本运算符
php
<?php
$a = 10; $b = 3;
echo $a + $b; // 13
echo $a - $b; // 7
echo $a * $b; // 30
echo $a / $b; // 3.3333(自动浮点!)
echo $a % $b; // 1
echo $a ** $b; // 1000(10^3,PHP 5.6+)
字符串运算符
php
<?php
$greeting = "Hello" . " " . "World"; // "." 连接字符串
$greeting .= "!"; // "Hello World!"
比较运算符
php
<?php
// == 松散比较(类型转换后比较)
var_dump(0 == "0"); // true
var_dump(0 == false); // true
// === 严格比较(类型相同才为真)
var_dump(0 === "0"); // false
var_dump(0 === false); // false
// 太空船运算符(PHP 7+)
echo 1 <=> 1; // 0(相等)
echo 1 <=> 2; // -1(小于)
echo 2 <=> 1; // 1(大于)
空合并 ?? 和 空安全 ?->
php
<?php
// ?? — 如果左边为 null,用右边的值
$name = $_GET['name'] ?? '游客';
$name = $_GET['name'] ?? $_POST['name'] ?? '匿名'; // 链式
// ?-> — 空安全操作符(PHP 8+)
// $country = $user?->getAddress()?->getCountry();
// 如果中间任何一个为 null,整个表达式返回 null