PHP 演算子
この章では、PHP におけるさまざまな演算子の適用について説明します。
PHP では、変数に値を代入するために代入演算子 = が使用されます。
PHP では、値を加算するために算術演算子 + が使用されます。
PHP 算術演算子算術演算子
演算子 結果 2 + 2 4
x - y y の差 5 - 2 3
x * y x と y の積を掛ける 5 * 2 10
x / y 15 / 5 3
除X % Y モーダル (除算法の余り) X Y の残りを除く 5 % 2 1 10 % 8 2
10 % 2 0
<?php $x=10; $y=6; echo ($x + $y); // 输出16 echo '<br/>' echo ($x - $y); // 输出4 echo '<br/>' echo ($x * $y); // 输出60 echo '<br/>' echo ($x / $y); // 输出1.6666666666667 echo '<br/>' echo ($x % $y); // 输出4 ?>
<?php var_dump(intdiv(10, 3)); ?>上記の例は出力: int(3)php割り当てオペレーター
operator値 x += y x %= y x = x % y 模(除法の残数) a .= b连接两个字符串 PHP中、基本的な赋值运算符です。 "=。これは、左側のオペランドが右側の式の値に設定されることを意味します。つまり、「$x = 5」の値は 5 です。 <?php
$x=10;
echo $x; // 输出10
$y=20;
$y += 100;
echo $y; // 输出120
$z=50;
$z -= 25;
echo $z; // 输出25
$i=5;
$i *= 6;
echo $i; // 输出30
$j=10;
$j /= 5;
echo $j; // 输出2
$k=15;
$k %= 4;
echo $k; // 输出3
?>
次の例は、さまざまな文字列演算子を使用して得られるさまざまな結果を示しています。 PHP増分/減少オペレーター
Operator‒X ++ の後、X に戻り、次に X に 1 を加えます
- X を事前に減少させ、次に xx-その後 x に戻し、その後 X マイナス 1 を行います<?php $a = "Hello"; $b = $a . " world!"; echo $b; // 输出Hello world! $x="Hello"; $x .= " world!"; echo $x; // 输出Hello world! ?>
演算子の優先順位
演算子の優先順位は非常に複雑なルールです。http://php.netを参照してください。 /manual/zh/ language.operators.precedence.php丸暗記する必要はありません。一般的に使用されるルールを上位から下位まで理解するだけで済みます• !論理的ではない•乗算および分割操作は、加算および減算操作(乗算と分割、次に加算と減算)よりも高くなります。 off ‐ off ‐ ‐ ‐ 論理演算子 (最初に計算してから比較) result = 3 * 2 + 1 > 8 || 厳密に必要でない場合でも、括弧を使用します。 、通常、コードの読みやすさを向上させることができます $result = 3 * 2 + 1 > 8 || 8 / 4 - 1 == 1;それを記述する最良の方法は次のとおりです$result = ((3) * 2 + 1) > 8) || ((8 / 4 - 1) == 1);PHP 比較演算子を使用すると、2 つの値を比較できます。操作 説明 例x が y に等しく、それらが同じ型の場合、true を返します 5==="5" false を返します
x != y が y に等しくない場合、x が y に等しくない場合、true を返しますy に等しくない x が y に等しくない場合、 true を返します 5>8 true を返します x!== y を返します false に戻りますx & lt; y よりも True 5 & LT; を返す Truex & GT; ==。 $a===$b は、$a と $b が数値的に等しいだけでなく、型も同じであることを意味します。 ! == と === は反対の意味を持ちます。$a!==$b は、$a と $b の値または型が等しくないことを意味します。 PHP では、null、false、array()、""、0、"0" の値はすべて空を表します。==、null == false、0 == "0"、null== array()、false == ""...を使用すると、すべて true が返されますが、=== を使用すると false が返されます
何百万もの! 1000万! == を =
と誤って書かないでください。これは初心者にとって最もありがちな間違いです。= は代入記号であり、== は等価性の比較です。次の例は、いくつかの比較演算子を使用して得られるさまざまな結果を示しています。
<?php $x=10; echo ++$x; // 输出11 $y=10; echo $y++; // 输出10 $z=5; echo --$z; // 输出4 $i=5; echo $i--; // 输出5 ?>
Php論理演算子
カーチャーバー名説明インスタンス
xとyがすべてTrueの場合、x = 6
y = 3を返します
(x <10 と y > 1) true を返します
️ (x==6 または y==5) true
x xor y を返しますs から s s s t ‐ ‐ ‐ 3
(x==6 xor y==3) false を返します
x && y
️ y=3 (x==5 | | y==5) false を返します !名前 x とy
x == y x と y が同じキー/値ペアを持つ場合、true を返す
x & lt; & gt; x が Y に等しくない場合は、Truex! : " (または 3 項) 演算子を返します。
文法形式
(expr1) ? (expr2) : (expr3)
expr1 が TRUE と評価されたときの値は expr2 で、expr1 が FALSE と評価されたときの値は expr3 です。
PHP 5.3以降、三項演算子の中間部分を省略できるようになりました。式 expr1 ?: expr3 は、expr1 が TRUE と評価される場合は expr1 を返し、それ以外の場合は expr3 を返します。
例
次の例では、$_GET リクエストにユーザー値が含まれていると判断され、含まれている場合は $_GET['user'] が返され、それ以外の場合は何も返されません:
<?php $x=100; $y="100"; var_dump($x == $y); echo "<br>"; var_dump($x === $y); echo "<br>"; var_dump($x != $y); echo "<br>"; var_dump($x !== $y); echo "<br>"; $a=50; $b=90; var_dump($a > $b); echo "<br>"; var_dump($a < $b); ?>
PHP の学習へようこそ
PHP の学習へようこそ
注: PHP_EOL は改行文字であり、より大きなプラットフォームと互換性があります。
PHP7+ バージョンには追加の NULL 合体演算子があります。例は次のとおりです:
<?php $x = array("a" => "red", "b" => "green"); $y = array("c" => "blue", "d" => "yellow"); $z = $x + $y; // $x 和 $y 数组合并 var_dump($z); var_dump($x == $y); var_dump($x === $y); var_dump($x != $y); var_dump($x <> $y); var_dump($x !== $y); ?>
結合比較演算子 (PHP7+)
PHP7+ は結合比較演算子をサポートしています。例は次のとおりです:
<?php $test = '欢迎学习PHP'; // 普通写法 $username = isset($test) ? $test : 'nobody'; echo $username, PHP_EOL; // PHP 5.3+ 版本写法 $username = $test ?: 'nobody'; echo $username, PHP_EOL; ?>