ホームページ > php教程 > php手册 > php 数组运算符(+)、字符串运算符(.)、逻辑运算符(&& AND || OR XO

php 数组运算符(+)、字符串运算符(.)、逻辑运算符(&& AND || OR XO

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-05-25 16:47:41
オリジナル
1454 人が閲覧しました

数组运算符(+)、字符串运算符(.)、逻辑运算符(&& AND || OR XOR)有需要的朋友可参考参考.

php数组运算符

$a + $b 联合 $a 和 $b 的联合. 

$a == $b 相等 如果 $a 和 $b 具有相同的键/值对则为 TRUE. 

$a === $b 全等 如果 $a 和 $b 具有相同的键/值对并且顺序和类型都相同则为 TRUE. 

$a != $b 不等 如果 $a 不等于 $b 则为 TRUE. 

$a $b 不等 如果 $a 不等于 $b 则为 TRUE. 

$a !== $b 不全等 如果 $a 不全等于 $b 则为 TRUE.

PHP 仅有的一个数组运算符是 + 运算符.它把右边的数组附加到左边的数组后,但是重复的键值不会被覆盖.

实例代码如下:

1

2

3

4

$a = array("a" => "apple", "b" => "banana");

$b = array("a" =>"pear", "b" => "strawberry", "c" => "cherry");

$c = $a + $b;

var_dump($c);

ログイン後にコピー

执行后,此脚本会显示:

实例代码如下:

1

2

3

4

5

6

7

8

array(3) {

  ["a"]=>

  string(5) "apple"

  ["b"]=>

  string(6) "banana"

  ["c"]=>

  string(6) "cherry"

}

ログイン後にコピー

数组中的单元如果具有相同的键名和值则比较时相等.

Example #1 比较数组

实例代码如下:

1

2

3

4

5

6

<?php

    $a = array("apple", "banana");

    $b = array(1 => "banana", "0" => "apple");

    var_dump($a == $b); // bool(true)

    var_dump($a === $b); // bool(false)

?>

ログイン後にコピー

字符串运算符

有两个字符串运算符.第一个是连接运算符(“.”),它返回其左右参数连接后的字符串.第二个是连接赋值运算符(“.=”),它将右边参数附加到左边的参数后

实例代码如下:

1

2

3

4

5

6

7

<?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

?>

ログイン後にコピー

实例代码如下:

1

2

3

4

5

6

7

8

9

<?php

     $a = &#39;12345&#39;;

    // This works:

     echo "qwe{$a}rty"; // qwe12345rty, using braces

     echo "qwe" . $a . "rty"; // qwe12345rty, concatenation used

    // Does not work:

    echo &#39;qwe{$a}rty&#39;; // qwe{$a}rty, single quotes are not parsed

    echo "qwe$arty"; // qwe, because $a became $arty, which is undefined

?>

ログイン後にコピー

逻辑运算符

下表逻辑运算符举例

$a and $b And(逻辑与) TRUE ,如果 $a 与 $b 都为 TRUE .

$a or $b Or(逻辑或) TRUE ,如果 $a 或 $b 任一为 TRUE .

$a xor $b Xor(逻辑异或) TRUE ,如果 $a 或 $b 任一为 TRUE ,但不同时是.

! $a Not(逻辑非) TRUE ,如果 $a 不为 TRUE .

$a && $b And(逻辑与) TRUE ,如果 $a 与 $b 都为 TRUE .

$a || $b Or(逻辑或) TRUE ,如果 $a 或 $b 任一为 TRUE .

“与”和“或”有两种不同形式运算符的原因是它们操作的优先级不同.

实例代码如下:

1

2

3

<?php

    ($a = $_GET[&#39;var&#39;]) || ($a = &#39;a default&#39;);

?>

ログイン後にコピー

实例代码如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<?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);

?>

ログイン後にコピー

以上例程的输出类似于:

1

2

3

4

bool(true)

bool(false)

bool(false)

bool(true)

ログイン後にコピー


関連ラベル:
and
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート