com doc/zh: sync to en: Add exponentiation assignment operator to corresponding table: language/operators.xml

[email protected] (Bole Chen) Wed, 03 Feb 2021 03:03:16 +0000
Newsgroups php.doc.zh
Message-ID <[email protected]>
Commit:    098e8d7c1a66629705dd295b77d1045df3857d25
Author:    Bole Chen <[email protected]>         Wed, 3 Feb 2021 11:03:16 +0800
Parents:   e0514ae682e3f5be98209180d41c15cf1f3d6233
Branches:  master

Link:       http://git.php.net/?p=doc/zh.git;a=commitdiff;h=098e8d7c1a66629705dd295b77d1045df3857d25

Log:
sync to en: Add exponentiation assignment operator to corresponding table

Changed paths:
  M  language/operators.xml
diff_098e8d7c1a66629705dd295b77d1045df3857d25.txt (text/plain, 10.3 KB)
diff --git a/language/operators.xml b/language/operators.xml
index e1148ed6..a6c194f7 100755
--- a/language/operators.xml
+++ b/language/operators.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!-- $Revision$ -->
-<!-- EN-Revision: 646e6eb3e3eaf0cb40127405a01ed5e3f479799f Maintainer: jhdxr Status: ready -->
+<!-- EN-Revision: 783fbc2001b129f5f8956937e15e253969b8765c Maintainer: jhdxr Status: ready -->
  <chapter xml:id="language.operators" xmlns="http://docbook.org/ns/docbook">
   <title>运算符</title>
   <simpara>
@@ -35,7 +35,10 @@
     <literal>$a = ($b = $c)</literal>。
    </para>
    <para>
-    没有结合的相同优先级的运算符不能连在一起使用,例如 <literal>1 &lt; 2 &gt; 1</literal> 在PHP是不合法的。但另外一方面表达式 <literal>1 &lt;= 1 == 1</literal> 是合法的, 因为 <literal>==</literal> 的优先级低于 <literal>&lt;=</literal>。
+    没有结合的相同优先级的运算符不能连在一起使用,例如
+    <literal>1 &lt; 2 &gt; 1</literal> 在PHP是不合法的。但另外一方面表达式
+    <literal>1 &lt;= 1 == 1</literal> 是合法的, 因为 <literal>==</literal> 的优先级低于
+    <literal>&lt;=</literal>。
    </para>
    <para>
     括号的使用,哪怕在不是必要的场合下,通过括号的配对来明确标明运算顺序,而非靠运算符优先级和结合性来决定,通常能够增加代码的可读性。
@@ -69,15 +72,15 @@
        <row>
         <entry>不适用</entry>
         <entry>
-         <literal>++</literal> 
-         <literal>--</literal> 
-         <literal>~</literal> 
-         <literal>(int)</literal> 
-         <literal>(float)</literal> 
-         <literal>(string)</literal> 
+         <literal>++</literal>
+         <literal>--</literal>
+         <literal>~</literal>
+         <literal>(int)</literal>
+         <literal>(float)</literal>
+         <literal>(string)</literal>
          <literal>(array)</literal>
-         <literal>(object)</literal> 
-         <literal>(bool)</literal> 
+         <literal>(object)</literal>
+         <literal>(bool)</literal>
          <literal>@</literal>
         </entry>
         <entry>
@@ -112,8 +115,8 @@
        <row>
         <entry>左</entry>
         <entry>
-         <literal>+</literal> 
-         <literal>-</literal> 
+         <literal>+</literal>
+         <literal>-</literal>
          <literal>.</literal>
         </entry>
         <entry>
@@ -123,7 +126,7 @@
        <row>
         <entry>左</entry>
         <entry>
-         <literal>&lt;&lt;</literal> 
+         <literal>&lt;&lt;</literal>
          <literal>&gt;&gt;</literal>
         </entry>
         <entry>
@@ -133,9 +136,9 @@
        <row>
         <entry>无</entry>
         <entry>
-         <literal>&lt;</literal> 
-         <literal>&lt;=</literal> 
-         <literal>&gt;</literal> 
+         <literal>&lt;</literal>
+         <literal>&lt;=</literal>
+         <literal>&gt;</literal>
          <literal>&gt;=</literal>
         </entry>
         <entry>
@@ -146,9 +149,9 @@
         <entry>无</entry>
         <entry>
          <literal>==</literal>
-         <literal>!=</literal> 
-         <literal>===</literal> 
-         <literal>!==</literal> 
+         <literal>!=</literal>
+         <literal>===</literal>
+         <literal>!==</literal>
          <literal>&lt;&gt;</literal>
          <literal>&lt;=&gt;</literal>
         </entry>
@@ -208,18 +211,18 @@
        <row>
         <entry>右</entry>
         <entry>
-         <literal>=</literal> 
-         <literal>+=</literal> 
-         <literal>-=</literal> 
-         <literal>*=</literal> 
-         <literal>**=</literal> 
-         <literal>/=</literal> 
-         <literal>.=</literal> 
-         <literal>%=</literal> 
-         <literal>&amp;=</literal> 
-         <literal>|=</literal> 
-         <literal>^=</literal> 
-         <literal>&lt;&lt;=</literal> 
+         <literal>=</literal>
+         <literal>+=</literal>
+         <literal>-=</literal>
+         <literal>*=</literal>
+         <literal>**=</literal>
+         <literal>/=</literal>
+         <literal>.=</literal>
+         <literal>%=</literal>
+         <literal>&amp;=</literal>
+         <literal>|=</literal>
+         <literal>^=</literal>
+         <literal>&lt;&lt;=</literal>
          <literal>&gt;&gt;=</literal>
          <literal>??=</literal>
         </entry>
@@ -462,7 +465,7 @@ $a = ($b = 4) + 5; // $a 现在成了 9,而 $b 成了 4。
      </programlisting>
     </informalexample>
    </para>
-   
+
    <para>
     在基本赋值运算符之外,还有适合于所有<link
     linkend="language.operators">二元算术</link>,数组集合和字符串运算符的“组合运算符”,这样可以在一个表达式中使用它的值并把表达式的结果赋给它,例如:
@@ -493,7 +496,7 @@ $b .= "There!"; // sets $b to "Hello There!", just like $b = $b . "There!";
    <sect2 xml:id="language.operators.assignment.reference">
     <title>引用赋值</title>
     <para>
-     PHP 支持引用赋值,使用“<computeroutput>$var 
+     PHP 支持引用赋值,使用“<computeroutput>$var
      = &amp;$othervar;</computeroutput>”语法。引用赋值意味着两个变量指向了同一个数据,没有拷贝任何东西。
     </para>
     <para>
@@ -542,11 +545,11 @@ Parse error: syntax error, unexpected 'new' (T_NEW) in …
      </informalexample>
     </para>
     <para>
-     有关引用更多信息参见本手册中<link
-     linkend="language.references">引用的解释</link>一章。
+     有关引用更多信息参见本手册中 <link
+     linkend="language.references">引用的解释</link> 一章。
     </para>
    </sect2>
-   
+
 
    <sect2 xml:id="language.operators.assignment.arithmetic">
     <title>算术赋值运算符</title>
@@ -585,6 +588,11 @@ Parse error: syntax error, unexpected 'new' (T_NEW) in …
         <entry>$a = $a % $b</entry>
         <entry>取模</entry>
        </row>
+       <row>
+        <entry>$a **= $b</entry>
+        <entry>$a = $a ** $b</entry>
+        <entry>指数</entry>
+       </row>
       </tbody>
      </tgroup>
     </informaltable>
@@ -658,6 +666,7 @@ Parse error: syntax error, unexpected 'new' (T_NEW) in …
      </tgroup>
     </informaltable>
    </sect2>
+
    <sect2 role="seealso" xml:id="language.operators.assignment.see-also">
     &reftitle.seealso;
     <para>
@@ -1424,62 +1433,62 @@ case "a": // never reached because "a" is already matched with 0
 }
 ?>
 ]]>
-     </programlisting>
-    </informalexample>
-   </para>
+      </programlisting>
+     </informalexample>
+    </para>
    </warning>
 
    <para>
     <informalexample>
      <programlisting role="php">
 <![CDATA[
-<?php  
+<?php
 // Integers
 echo 1 <=> 1; // 0
 echo 1 <=> 2; // -1
 echo 2 <=> 1; // 1
- 
+
 // Floats
 echo 1.5 <=> 1.5; // 0
 echo 1.5 <=> 2.5; // -1
 echo 2.5 <=> 1.5; // 1
- 
+
 // Strings
 echo "a" <=> "a"; // 0
 echo "a" <=> "b"; // -1
 echo "b" <=> "a"; // 1
- 
+
 echo "a" <=> "aa"; // -1
 echo "zz" <=> "aa"; // 1
- 
+
 // Arrays
 echo [] <=> []; // 0
 echo [1, 2, 3] <=> [1, 2, 3]; // 0
 echo [1, 2, 3] <=> []; // 1
 echo [1, 2, 3] <=> [1, 2, 1]; // 1
 echo [1, 2, 3] <=> [1, 2, 4]; // -1
- 
+
 // Objects
-$a = (object) ["a" => "b"]; 
-$b = (object) ["a" => "b"]; 
+$a = (object) ["a" => "b"];
+$b = (object) ["a" => "b"];
 echo $a <=> $b; // 0
- 
-$a = (object) ["a" => "b"]; 
-$b = (object) ["a" => "c"]; 
+
+$a = (object) ["a" => "b"];
+$b = (object) ["a" => "c"];
 echo $a <=> $b; // -1
- 
-$a = (object) ["a" => "c"]; 
-$b = (object) ["a" => "b"]; 
+
+$a = (object) ["a" => "c"];
+$b = (object) ["a" => "b"];
 echo $a <=> $b; // 1
- 
-// only values are compared
-$a = (object) ["a" => "b"]; 
-$b = (object) ["b" => "b"]; 
+
+// not only values are compared; keys must match
+$a = (object) ["a" => "b"];
+$b = (object) ["b" => "b"];
 echo $a <=> $b; // 1
 
 ?>
 ]]>
-      
+
      </programlisting>
     </informalexample>
    </para>
@@ -1561,7 +1570,8 @@ var_dump(min(-100, -10, NULL, 10, 100)); // NULL - (bool)NULL < (bool)-100 is FA
      </programlisting>
     </example>
    </para>
-   
+
+
    <para>
     <example>
      <title>标准数组比较代码</title>
@@ -1690,7 +1700,7 @@ echo ((true ? 'true' : 'false') ? 't' : 'f');
      </para>
     </note>
    </sect2>
-   
+
    <sect2 xml:id="language.operators.comparison.coalesce">
     <title>NULL 合并运算符</title>
     <para>
@@ -1724,7 +1734,7 @@ if (isset($_POST['action'])) {
     <note>
      <simpara>
       请注意:NULL 合并运算符是一个表达式,产生的也是表达式结果,而不是变量。
-      返回引用变量时需要强调这一点。 
+      返回引用变量时需要强调这一点。
       因此,在返回引用的函数里就无法使用这样的语句:<literal>return $foo ?? $bar;</literal>,还会提示警告。
      </simpara>
     </note>
@@ -1750,7 +1760,7 @@ echo $foo ?? $bar ?? $baz ?? $qux; // 输出 1
       </example>
      </para>
     </note>
-   </sect2> 
+   </sect2>
   </sect1>
 
   <sect1 xml:id="language.operators.errorcontrol">
@@ -2269,7 +2279,7 @@ var_dump($a === $b); // bool(false)
   <sect1 xml:id="language.operators.type">
    <title>类型运算符</title>
    <para>
-    <literal>instanceof</literal> 用于确定一个 PHP 变量是否属于某一类 
+    <literal>instanceof</literal> 用于确定一个 PHP 变量是否属于某一类
     <link linkend="language.oop5.basic.class">class</link> 的实例:
     <example>
      <title>对类使用 <literal>instanceof</literal></title>
@@ -2331,7 +2341,7 @@ bool(true)
     </example>
    </para>
    <para>
-    检查一个对象是否<emphasis>不是</emphasis>某个类的实例,可以使用<link 
+    检查一个对象是否<emphasis>不是</emphasis>某个类的实例,可以使用<link
     linkend="language.operators.logical">逻辑运算符 <literal>not</literal></link>。
     <example>
      <title>使用 <literal>instanceof</literal> 检查对象<emphasis>不是</emphasis>某个类的实例</title>
@@ -2356,7 +2366,7 @@ bool(true)
     </example>
    </para>
    <para>
-    最后,<literal>instanceof</literal>也可用于确定一个变量是不是实现了某个<link 
+    最后,<literal>instanceof</literal>也可用于确定一个变量是不是实现了某个<link
     linkend="language.oop5.interfaces">接口</link>的对象的实例:
     <example>
      <title>对接口使用 <literal>instanceof</literal></title>