1
0
mirror of https://github.com/php/doc-zh.git synced 2026-03-23 22:52:08 +01:00
Files
2025-11-08 17:36:58 +08:00

140 lines
3.3 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 16934048f79c6e117cd16a23c09c1b2ea502e284 Maintainer: mowangjuanzi Status: ready -->
<sect1 xml:id="language.operators.array">
<title>数组运算符</title>
<titleabbrev>数组</titleabbrev>
<table>
<title>数组运算符</title>
<tgroup cols="3">
<thead>
<row>
<entry>例子</entry>
<entry>名称</entry>
<entry>结果</entry>
</row>
</thead>
<tbody>
<row>
<entry>$a + $b</entry>
<entry>联合</entry>
<entry><varname>$a</varname><varname>$b</varname> 的联合。</entry>
</row>
<row>
<entry>$a == $b</entry>
<entry>相等</entry>
<entry>如果 <varname>$a</varname><varname>$b</varname> 具有相同的键/值对则为 &true;</entry>
</row>
<row>
<entry>$a === $b</entry>
<entry>全等</entry>
<entry>如果 <varname>$a</varname><varname>$b</varname> 具有相同的键/值对并且顺序和类型都相同则为 &true;</entry>
</row>
<row>
<entry>$a != $b</entry>
<entry>不等</entry>
<entry>如果 <varname>$a</varname> 不等于 <varname>$b</varname> 则为 &true;</entry>
</row>
<row>
<entry>$a &lt;&gt; $b</entry>
<entry>不等</entry>
<entry>如果 <varname>$a</varname> 不等于 <varname>$b</varname> 则为 &true;</entry>
</row>
<row>
<entry>$a !== $b</entry>
<entry>不全等</entry>
<entry>如果 <varname>$a</varname> 不全等于 <varname>$b</varname> 则为 &true;</entry>
</row>
</tbody>
</tgroup>
</table>
<para>
<literal>+</literal> 运算符把右边的数组元素附加到左边的数组后面,两个数组中都有的键名,则只用左边数组中的,右边的被忽略。
</para>
<para>
<example>
<title>数组追加运算符</title>
<programlisting role="php">
<![CDATA[
<?php
$a = array("a" => "apple", "b" => "banana");
$b = array("a" => "pear", "b" => "strawberry", "c" => "cherry");
$c = $a + $b; // $a 和 $b 的并集
echo "Union of \$a and \$b: \n";
var_dump($c);
$c = $b + $a; // $b 和 $a 的并集
echo "Union of \$b and \$a: \n";
var_dump($c);
$a += $b; // $a += $b 的并集是 $a 和 $b
echo "Union of \$a += \$b: \n";
var_dump($a);
?>
]]>
</programlisting>
&example.outputs;
<screen role="php">
<![CDATA[
Union of $a and $b:
array(3) {
["a"]=>
string(5) "apple"
["b"]=>
string(6) "banana"
["c"]=>
string(6) "cherry"
}
Union of $b and $a:
array(3) {
["a"]=>
string(4) "pear"
["b"]=>
string(10) "strawberry"
["c"]=>
string(6) "cherry"
}
Union of $a += $b:
array(3) {
["a"]=>
string(5) "apple"
["b"]=>
string(6) "banana"
["c"]=>
string(6) "cherry"
}
]]>
</screen>
</example>
</para>
<para>
数组中的单元如果具有相同的键名和值则比较时相等。
</para>
<para>
<example>
<title>比较数组</title>
<programlisting role="php">
<![CDATA[
<?php
$a = array("apple", "banana");
$b = array(1 => "banana", "0" => "apple");
var_dump($a == $b); // bool(true)
var_dump($a === $b); // bool(false)
?>
]]>
</programlisting>
</example>
</para>
<sect2 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><link linkend="language.types.array">数组类型</link></member>
<member><link linkend="ref.array">数组函数</link></member>
</simplelist>
</para>
</sect2>
</sect1>