PHPの演算子

Jul 25, 2016 am 08:45 AM

1. 算術演算子

  1. + (加算) $a + $b
  2. - (減算) $a - $b
  3. * (倍数) $a * $b
  4. /(除算) $a / $b
  5. % (余り) $ a % $b
コードをコピー

2. 文字列演算子

  1. . (ドット) (php の唯一の文字列演算子)
コードをコピーします

3. 代入演算子
1. 単純な代入演算子

  1. = (等号)
コードをコピー

2. 複合代入演算子

  1. += $a += $b は $a = $a + $b と同等
  2. -= $a -= $b は $a = $a - $b
  3. *= $a *= と同等$b は $a = $a * $b
  4. /+ $a /= $b は $a = $a / $b
  5. %= $a %= $b と同等 $a = $a % $b
  6. .= $a .= $b は $a = $a と同等です
コードをコピーします

3. 事前インクリメントおよびデクリメント操作と事後インクリメントおよびデクリメント操作

  1. $a++ $a 自体の値は変更されていませんが、式全体の値は $a + 1 になります
  2. ++$a $a 自体の値は変更されており、$a は最初に $ に置き換えられますa = $a + 1、そして return $a + 1
  3. $a-- $a 自体の値は変更されていませんが、式全体の値は $a - 1
  4. --$a になります。 $a自体が変更されました、$a 最初に$a = $a - 1、次に$a + 1を返します
コードをコピー

4. 参照演算子

  1. &
コードをコピー

参照演算子 & は結合代入で使用できます。通常、ある変数の値を別の変数に割り当てるときは、まずメタ変数のコピーが作成され、次にメモリ内の別の場所に保存されます。例:

  1. $a = 5;
  2. $b = $a;
コードをコピー

上記の例では、コードの最初の行で $a に値が割り当てられ、コードの 2 行目で最初に $a のコピーが生成され、それが $b に保存されます。その後 $a の値が変更されても、$b の値は変更されません。以下の例を見てください:

  1. $a = 5;
  2. $b = &$a;
  3. $a = 7; // $a と $b は両方とも 7 になりました
コードをコピー

注: 参照は独立した 2 番目のポインターではなく、元の変数を使用するポインターです。つまり、$a と $b の両方がメモリ内の同じアドレスを指します。上記の例では、2 行目は $b によって参照される $a です。3 行目の $a の値が変更されると、それを参照する $b も変更されます。リセットすることで、この参照の関連付けを解除できます:

  1. unsert($a);
コードをコピー

注意: このリセットは $a をリセットするだけであり、$b(7) の値は変更しません。 unsert($a) は、$a とメモリに格納されている値 7 との関連付けを破壊するだけです。 Unsert($a) は、$a をキャンセルすることとして理解できます。

4. 比較演算子
比較演算子は、論理ブール値 (true または false) を返します。

  1. == (等しい)
  2. === (常に等しい)
  3. != (等しくない)
  4. !== (等しくない)
  5. <> (等しくない)
  6. <(より小さい)
  7. > ;(より大きい)
  8. <==(以下)
  9. >==(以上)
コードをコピー

5. 論理演算子

  1. ! (Not)
  2. && (AND)
  3. || (OR)
  4. and (AND)
  5. or (OR)
  6. xor (XOR) $a または $b が true の場合、Return真実。 $a と $b が両方とも true、または両方とも false の場合は、false を返します。
コードをコピー

注: and および or は && および || よりも優先順位が低くなります。

6. ビット演算子
ビット演算子は、整数変数をビット (ビット) のシーケンスとして扱うことができます。ビット演算子はあまり使用されません。

  1. & (ビットごとの AND) $a & $b $a と $b の各ビットの AND 演算の結果
  2. | (ビットごとの OR) $a $b $a と $b の各ビットの AND 演算の結果b の各ビットを OR 演算した結果
  3. ~ (ビット単位の NOT) ~$a $a の各ビットを NOT 演算した結果
  4. ^ (ビット単位の XOR) $a ^ $ b $a と $b の各ビットに対して「XOR」演算を実行した結果
  5. << (左シフト) $a << $b $a を左に $b ビットシフトします
  6. >> (右シフト) $a >> $b $a を $b ずつ右にシフトします
コードをコピーします

7.その他のオペレーター

  1. , (カンマ) は、関数パラメータまたは他のリスト項目を区切るために使用されます (独立してではなく) 付随的に使用されることがよくあります。
  2. new (クラスのインスタンスの初期化)
  3. -> (クラスのメンバーへのアクセス)
コードをコピー

1. 三項演算子?:

  1. 条件 ? trueの場合の値 : falseの場合の値
コードをコピー

三項演算子は、if else 条件文の略称として見ることができます。
2. エラー抑制演算子

  1. @(アットマーク)
コードをコピー

エラー抑制演算子 @ は、任意の式の前、つまり、値を持つ式または計算可能な式の前に使用できます。例:

  1. $a = @(57 / 0);
コードをコピー

上記の例でエラー抑制演算子 @ が使用されていない場合、このコード行は 0 による除算の警告をスローします。@ が使用されている場合、警告は抑制されます。つまり、スローされません。
このメソッドによって一部の警告が抑制され、警告が発生した場合は、事前に作成したエラー処理ステートメントによって処理する必要があります。
php.ini の track_errors 機能が有効になっている場合、エラー メッセージはグローバル変数 $php_errormsg に保存されます。
3. 実行オペレーター

  1. `` (後ろの一重引用符のペア) 実行演算子は実際には演算子のペア、つまり後ろの一重引用符のペアです。
コードをコピー

php は、サーバー側コマンドとして後ろの一重引用符で囲まれたコマンドを実行しようとします。式の値はコマンドの実行結果です。たとえば、UNIX システムでは次を使用できます:

  1. $out = `ls -la`;
  2. echo '
     ';
Windows サーバーでは、以下を使用できます:

$out = `dir c:`;
echo '
 ';
どちらの場合も、ディレクトリのリストを取得して $out に保存し、そのリストをブラウザに表示したり、他のメソッドで処理したりします。
4. 配列演算子 注: 以下の構文の説明では、$a と $b は通常のスカラー値ではなく、配列型です



+ (Union) $a + $b $a と $b のすべての要素を含む配列を返します

== (同等) $ == $b $a と $b が同じキー値を持つ場合 はい、return true
=== (同一性) $a === $b $a と $b が同じキーと値のペアで同じ順序を持つ場合、 true
!= (非等価) $a != $b を返します。 $a と $b が等価ではない場合、true を返します
    <> (等価ではない) $a <> $a と $b が等価でない場合、true を返します
  1. !== (非同一性) $ !== $b $a と $b が同一でない場合、true を返します
  2. コードをコピー
5. 型演算子
instanceof (唯一の型演算子)、この演算子はオブジェクト指向プログラミングで使用されます。 instanceof 演算子を使用すると、オブジェクトが特定のクラスのインスタンスであるかどうかを確認できます。例:



classsampleClass();

$myObject = newsampleClass();
if ($myObjectinstanceofsampleClass) {
    echo 'myObjectはsampleClassのインスタンスです';
  1. }
  2. ?>

  3. コードをコピー
  4. php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

セッションのハイジャックはどのように機能し、どのようにPHPでそれを軽減できますか? セッションのハイジャックはどのように機能し、どのようにPHPでそれを軽減できますか? Apr 06, 2025 am 12:02 AM

セッションハイジャックは、次の手順で達成できます。1。セッションIDを取得します。2。セッションIDを使用します。3。セッションをアクティブに保ちます。 PHPでのセッションハイジャックを防ぐための方法には次のものが含まれます。1。セッション_regenerate_id()関数を使用して、セッションIDを再生します。2。データベースを介してストアセッションデータを3。

確固たる原則と、それらがPHP開発にどのように適用されるかを説明してください。 確固たる原則と、それらがPHP開発にどのように適用されるかを説明してください。 Apr 03, 2025 am 12:04 AM

PHP開発における固体原理の適用には、次のものが含まれます。1。単一責任原則(SRP):各クラスは1つの機能のみを担当します。 2。オープンおよびクローズ原理(OCP):変更は、変更ではなく拡張によって達成されます。 3。Lischの代替原則(LSP):サブクラスは、プログラムの精度に影響を与えることなく、基本クラスを置き換えることができます。 4。インターフェイス分離原理(ISP):依存関係や未使用の方法を避けるために、細粒インターフェイスを使用します。 5。依存関係の反転原理(DIP):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

システムの再起動後にUnixSocketの権限を自動的に設定する方法は? システムの再起動後にUnixSocketの権限を自動的に設定する方法は? Mar 31, 2025 pm 11:54 PM

システムが再起動した後、UnixSocketの権限を自動的に設定する方法。システムが再起動するたびに、UnixSocketの許可を変更するために次のコマンドを実行する必要があります:sudo ...

phpstormでCLIモードをデバッグする方法は? phpstormでCLIモードをデバッグする方法は? Apr 01, 2025 pm 02:57 PM

phpstormでCLIモードをデバッグする方法は? PHPStormで開発するときは、PHPをコマンドラインインターフェイス(CLI)モードでデバッグする必要がある場合があります。

PHPでの後期静的結合を説明します(静的::)。 PHPでの後期静的結合を説明します(静的::)。 Apr 03, 2025 am 12:04 AM

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPのCurlライブラリを使用してJSONデータを含むPOSTリクエストを送信する方法は? PHPのCurlライブラリを使用してJSONデータを含むPOSTリクエストを送信する方法は? Apr 01, 2025 pm 03:12 PM

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。

See all articles