php配列演算子
$a + $b Union $a と $b の和集合。
$a == $b $a と $b が同じキーと値のペアを持つ場合、TRUE に等しくなります。
$a === $b congruent $a と $b が同じキー/値ペアを持ち、同じ順序と型である場合に TRUE。
$a != $b は、$a が $b と等しくない場合、TRUE となります。
$a <> $a が $b と等しくない場合、$b は TRUE となります。
$a !== $b は等しくない $a が $b と等しくない場合は TRUE。
PHP の唯一の配列演算子は + 演算子です。右の配列を左の配列に追加しますが、重複したキー値は上書きされません。
$a = array("a" => "apple", "b" => "banana"); $b = array("a" =>"pear", "b" => "strawberry", "c" => "cherry"); $c = $a + $b; var_dump($c);
実行後、このスクリプトは次のように表示されます:
array(3) { ["a"]=> string(5) "apple" ["b"]=> string(6) "banana" ["c"]=> string(6) "cherry" }
配列内のユニットは、同じキー名と値を持つ場合、比較すると等しくなります。
<?php $a = array("apple", "banana"); $b = array(1 => "banana", "0" => "apple"); var_dump($a == $b); // bool(true) var_dump($a === $b); // bool(false) ?>
文字列演算子は 2 つあります。 1 つ目は連結演算子 (「.」) で、左引数と右引数を連結した文字列を返します。 2 番目の演算子は連結代入演算子(".=") で、右の引数を左の引数に追加します
<?php echo "thr"."ee"; //prints the string "three" echo "twe" . "lve"; //prints the string "twelve" echo 1 . 2; //prints the string "12" echo 1.2; //prints the number 1.2 echo 1+2; //prints the number 3 ?>
<?php $a = '12345'; // This works: echo "qwe{$a}rty"; // qwe12345rty, using braces echo "qwe" . $a . "rty"; // qwe12345rty, concatenation used // Does not work: echo 'qwe{$a}rty'; // qwe{$a}rty, single quotes are not parsed echo "qwe$arty"; // qwe, because $a became $arty, which is undefined ?>
$a と $b And (論理 AND) TRUE if Both $aおよび $b は TRUE です。
$a または $b $a または $b のいずれかが TRUE の場合、OR (論理和) TRUE。
$a xor $b Xor (論理排他的論理和) $a または $b のいずれかが TRUE の場合に TRUE (ただし両方が同時にではない場合)。
! $a が TRUE でない場合、 $a Not (論理的ではありません)。
$a && $b $a と $b の両方が TRUE の場合、And (論理積) TRUE。
$a || $b $a または $b のいずれかが TRUE の場合、OR (論理和)。
「AND」と「OR」に 2 つの異なる形式の演算子がある理由は、それらの演算の 優先順位 が異なるためです。
<?php ($a = $_GET['var']) || ($a = 'a default'); ?>
<?php // 下面的 foo() 不会被调用,因为它们被运算符“短路”了。 $a = (false && foo()); $b = (true || foo()); $c = (false and foo()); $d = (true or foo()); // "||" 的优先级比 "or" 高 $e = false || true; // $e 被赋值为 (false || true),结果为 true $f = false or true; // $f 被赋值为 false [Altair注:"=" 的优先级比 "or" 高] var_dump($e, $f); // "&&" 的优先级比 "and" 高 $g = true && false; // $g 被赋值为 (true && false),结果为 false $h = true and false; // $h 被赋值为 true [Altair注:"=" 的优先级比 "and" 高] var_dump($g, $h); ?>
上記のルーチンの出力は次のようになります:
bool(true) bool(false) bool(false) bool(true)
以上がPHP の配列演算子、文字列演算子、論理演算子の例の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。