ホームページ  >  記事  >  バックエンド開発  >  php_PHP チュートリアルの演算子の基本的な紹介

php_PHP チュートリアルの演算子の基本的な紹介

WBOY
WBOYオリジナル
2016-07-13 17:14:54902ブラウズ

PHP で一般的に使用される演算子には、算術演算子、代入演算子、比較演算子、論理演算子などが含まれます。友達に使い方を紹介しましょう。

算術演算子

除算演算子は常に浮動小数点数を返します。唯一の例外は、両方のオペランドが整数 (または文字列から変換された整数) で、正確に割り切れる場合であり、その場合は整数を返します。

モジュロ演算子のオペランドは、演算前に整数 (小数部を除く) に変換されます。

注: $a が負の場合のモジュロ $a % $b の結果も負になります。

例:

コードは次のとおりです コードをコピー

/* i386 と amd64、Debian lenny/sid の両方で、Suhosin-Patch 0.9.6.2 (cli) を使用した PHP 5.2.6-1 でテスト済み */
$a = 2863311530;
$b = 256;
$c = $a % $b;
echo "$c
n";
echo (2863311530 % 256)."
n"; /* 念のため変数なしで直接 */
?>

オペレーター 手順 結果
+ 追加 x=2
x+2
4
- 引き算 x=2
5-x
3
* 掛け算 x=4
×*5
20
/ 部門 5/15
5/2
3
2.5
% モジュラス(除算剰余) 5%2
10%8
10%2
1
2
0
++ 増分 x=5
x++
x=6
--- 減少 x=5
×--
x=4

代入演算子

基本的な代入演算子は「=」です。最初は「等しい」と思うかもしれませんが、そうではありません。これは実際には、右側の式の値を左側のオペランドに代入することを意味します。

代入演算式の値が代入された値になります。つまり、「$a = 3」の値は 3 になります。ここにいくつかのヒントがあります:

コードは次のとおりです コードをコピー

$a = ($b = 4) + 5; // $a は 9 になり、$b は 4 になります。

?>

基本的な代入演算子に加えて、すべての二項算術演算子、配列セット演算子、および文字列演算子に適した「結合演算子」があり、これを使用すると、式でその値を使用し、式の結果を割り当てることができます。たとえば、次のようになります。

コードは次のとおりですコードをコピー

代入操作では、元の変数の値が新しい変数にコピーされるため (値による代入)、一方を変更しても他方には影響しないことに注意してください。これは、非常に密なループで大きな配列などの値をコピーするのにも適しています。 $var = &$othervar; 構文を使用して参照割り当てを使用することもできます。参照割り当てとは、両方の変数が同じデータを指しており、データのコピーが存在しないことを意味します。引用の詳細については、引用の説明を参照してください。 PHP 5 では、新しい clone キーワードを明示的に使用しない限り、オブジェクトは常に参照によって割り当てられます

$a = 3;

$a += 5; // 次のように $a を 8 に設定します: $a = $a + 5;
$b = "こんにちは ";
$b .= "There!"; // $b = "There!" と同様に、$b を "Hello There!" に設定します。
?>

オペレーター 手順
= x=y x=y
+= x+=y x=x+y
-= x-=y x=x-y
*= x*=y x=x*y
/= x/=y x=x/y
.= x.=y x=x.y
%= x%=y x=x%y

比較演算子

比較演算子は、その名前が示すように、2 つの値を比較できます。整数と文字列を比較すると、文字列は整数に変換されます。 2 つの数値文字列を比較する場合は、整数として比較します。このルールは switch ステートメントにも適用されます。

コードは次のとおりです コードをコピー

var_dump(0 == "a"); // 0 == 0 -> var_dump("1" == "01"); // 1 == 1 -> var_dump("1" == "1e0"); // 1 == 1 -> スイッチ (「a」) {
ケース0:
エコー「0」;
休憩
case "a": // "a" はすでに 0 と一致しているため、到達しません
「a」をエコーし​​ます;
休憩
}
?>


オペレーター手順例==は5==8 は false を返します!=は等しくありません5!=8 は true を返します>は5>8 は false を返しますは5 >=は5>=8 は false を返しますは5

論理演算子

「AND」と「OR」に 2 つの異なる形式の演算子がある理由は、それらの演算の優先順位が異なるためです (演算子の優先順位を参照)。

例 #1 論理演算子の例

に等しい
より大きい
より小さいです
以上です
以下です
コードは次のとおりです コードをコピー

// 次の foo() は、オペレーターによって「短絡」されているため、呼び出されません。
$a = (false && foo());
$b = (true || foo());
$c = (false と foo());
$d = (true または foo());

// 「||」は「or」よりも優先されます
$e = false || // $e には値 (false || true) が代入され、結果は true になります
$f = false または true; // $f には false が割り当てられます [Altair 注: "= は "or" よりも優先されます]
var_dump($e, $f);

// 「&&」は「and」よりも優先されます
$g = true && false; // $g には値 (true && false) が代入され、結果は false になります
$h = true および false; // $h には true が割り当てられます [Altair 注: "= は "and" よりも優先されます]
var_dump($g, $h);
?>
上記のルーチンの出力は次のようになります:

ブール(真)
ブール(偽)
ブール(偽)
ブール(真)

オペレーター 手順
&& x=6
y=3

(x 1) は true を返します

|| x=6
y=3

(x==5 || y==5) は false を返します

違います x=6
y=3

!(x==y) は true を返します

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/628919.html技術記事 PHP で一般的に使用される演算子には、算術演算子、代入演算子、比較演算子、論理演算子などが含まれます。友達に使い方を紹介しましょう。 算術演算子除算...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。