演算子の優先順位
すべてのプログラミング言語には演算子があり、演算子を柔軟に使用できるように学習する必要があります。
演算子には異なる優先順位と組み合わせの方向があります。
リーリーコードの可読性を高めるために、必要に応じて括弧を使用します。
算術演算子
モジュロ演算子の結果は、被除数と同じ符号を持ちます。
代入演算子は、元の変数の値を新しい変数にコピーします。例外は、オブジェクトが見つかった場合、コピーに clone
キーワードが明示的に使用されない限り、値は参照によって割り当てられます。
新しい演算子は自動的に参照を返します。
ビット演算子
ディスプレイスメントには次のルールがあります:
このセクションの焦点は、マニュアルの焦点であるいくつかのサンプル プログラムを理解することです。この例の文字列の XOR 演算は理解するのが難しいです。これについては後で説明します。整数の変位もあって、よくわかった気がします。
比較演算子
通常の等号==
型変換後に2つの値が等しい限り、trueを返します。
数値と文字列を比較する場合、または数値内容を含む文字列を比較する場合、文字列は数値に変換され、数値として比較が実行されます。
リーリーPHP 5.3 以降、三項演算子の中間部分を省略できるようになりました。式 expr1 ?: expr3
は、expr1 が true の場合は expr1 を返し、それ以外の場合は expr3 を返します。三項演算子は左から右に評価されます。
エラー制御オペレーター
PHP は、式に対してのみ有効なエラー制御演算子 @ をサポートしています。これを式の前に置くと、式によって生成される可能性のあるエラー メッセージは無視されます。
関数やクラスの定義の前に配置したり、if や foreach などの条件構造で使用したりすることはできません。
実行オペレーター
PHP は、キーボードの左上隅にあるバックティックという実行演算子をサポートしています。効果は関数shell_exec()
と同じです。
セーフ モードが有効になっている場合、または shell_exec()
がオフになっている場合、バックティック演算子は効果がありません。
注意!二重引用符で囲まれた文字列ではバッククォートを使用できません。
インクリメントデクリメント演算子
インクリメント/デクリメント演算子はブール値には影響しません。
NULL 値を減らしても効果はありませんが、NULL を増やした結果は 1 になります。
文字変数の算術演算を扱う場合、PHP は C の習慣ではなく Perl の習慣に従います。たとえば、Perl では $a = 'Z'; $a++;
は $a を 'AA' に変換します。
注意!文字変数は増加のみ可能で減少はできず、純粋な文字 (a ~ z および A ~ Z) のみをサポートします。他の文字変数の増減は無効となり、元の文字列は変化しません。
リーリー論理演算子
||
比or
的优先级高。&&
比and
の優先度が高くなります。
文字列演算子
最初のものは連結演算子です.
,第二个是连接赋值运算符.=
。
配列演算子
ユナイテッド:$a + $b
。右側の配列要素を左側の配列に追加します。両方の配列のキーが存在する場合は、左側の配列のキーのみが使用され、変更は無視されます。
等しい: $a == $b
。同じキーと値のペアがあります。
一致: $a === $b
。同じキーと値のペアを同じ順序とタイプで持ちます。
待つ必要はありません: $a != $b
或$a <> $b
。
は合同ではありません: $a !== $b
。
配列内のセルのキー名と値が同じ場合、順序と型は関係なく比較されます。
リーリー出力結果は以下の通りです。
リーリー型演算子
PHP には型演算子instanceof
があり、PHP 変数が特定のクラスのインスタンスに属しているかどうかを判断するために使用されます。
定数の検出には instanceof
を使用できないことに注意してください。
(全文終わり)
上記では、演算子 - PHP マニュアルのメモを、関連する内容を含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。