数组操作符意义与使用示例

数组这种符合类型的数据可以进行运算,数组的运算通过数组操作数实现。见下表:

数组操作运算符

运算符 含义 示例
+ 联合 $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
//仔细观察下面几个数组的特征
$test_1=array('a','b','c');
$test_2=array('a','b','c');//数组名与test_1不同,但数组内元素完全相同
$test_22=array('b','a','c');//数组名与test_1不同,但数组内元素相同,顺序不同
$test_3=array('d','e','f','g');////数组名与test_1不同,数组内元素个数与元素都不同
$test_4 = array('one' => 'C++','two' => 'C','three' => 'PHP','four' => 'JAVA','five' =>'Python' );
$test_5 = array('1' =>'计算机','2' =>'电气' ,'3' =>'自动化' ,'4' =>'物理' ,'5' =>'化学' );

if($test_1==$test_2){//判断等价
echo '$test_1==$test_2'."<br>";
} else {
echo '$test_1!=$test_2'."<br>";
}
//输出$test_1==$test_2

if($test_1===$test_2){//判断恒等
echo '$test_1===$test_2'."<br>";
} else {
echo '$test_1!==$test_2'."<br>";
}
//输出$test_1===$test_2

if($test_1==$test_22){//判断等价
echo '$test_1==$test_22'."<br>";
} else {
echo '$test_1!=$test_22'."<br>";
}
//输出$test_1!=$test_22

if($test_1===$test_22){//判断恒等
echo '$test_1===$test_22'."<br>";
} else {
echo '$test_1!==$test_22'."<br>";
}
//输出$test_1!==$test_22

$test_6=$test_1+$test_2;
echo '$test_6: ';
print_r($test_6);
echo "<br>";
//输出Array ( [0] => a [1] => b [2] => c )

$test_7=$test_2+$test_22;
echo '$test_7: ';
print_r($test_7);
echo "<br>";
//输出Array ( [0] => a [1] => b [2] => c )

$test_8=$test_4+$test_5;
echo '$test_8: ';
print_r($test_8);
echo "<br>";
//输出Array ( [one] => C++ [two] => C [three] => PHP [four] => JAVA [five] => Python [1] => 计算机 [2] => 电气 [3] => 自动化 [4] => 物理 [5] => 化学 )

$test_9=$test_1+$test_3;
echo '$test_9: ';
print_r($test_9);
echo "<br>";
//输出$test_9: Array ( [0] => a [1] => b [2] => c [3] => g )
?>

通过上面各种眼花缭乱的比较和相加,得出的结论是:

当两个数组进行等价比较的时候:如果两个数组内的元素完全一样(元素的索引、元素个数、元素顺序以及元素值)时 <=>等价;否则不等价。

当两个数组进行恒等比较的时候:如果两个数组内的元素完全一样(元素的索引、元素个数、元素顺序、元素值及其类型)时 <=>等价;否则不等价

注意,两个的数组比较,与数组名是否相同,无关。

在两个数组进行加法操作时,如果第一个数组的元素个数大于或等于第二个数组的元素个数,则相加之后,结果与第一个数组相同,不会产生覆盖;

如果第一个数组的元素个数小于第二个数组的元素个数,则相加之后,第一个数组的所有元素会被保留,而第二个数组中比第一个是数组多出的元素会被加到第一个数组后面。

赞(0)
声明:本网站发布的内容(图片、视频和文字)以原创、转载和分享网络内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-62778877-8306;邮箱:fanjiao@west.cn。本站原创内容未经允许不得转载,或转载时需注明出处:西部数码知识库 » 数组操作符意义与使用示例

登录

找回密码

注册