suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Warum gibt dieser Code nicht einfach die Buchstaben A bis Z aus?


<?php
for ($i = 'a'; $i <= 'z'; $i++)
    echo "$in";

Dieses Snippet gibt die folgende Ausgabe aus (Zeilenumbrüche werden durch Leerzeichen ersetzt):

a b c def g h i j k l m no p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg ch ci cj ck cl cm cn co cp cq cr cs ct cu cv cw cx cy cz da db dc dd de df dg dh di dj dk dl dm dn do dp dq Dr ds dt du dv dw dx dy dze ea eb ec ed ee ef eg eh ei ej ek el em en eo ep eq er es et eu ev ew ex...to yz


P粉239089443P粉239089443315 Tage vor561

Antworte allen(2)Ich werde antworten

  • P粉555682718

    P粉5556827182024-01-22 11:11:19

    因为一旦达到“z”(这是范围内的有效结果,$i++ 将其递增到序列中的下一个值),下一个值将是“aa”;按字母顺序,'aa' 是 < 'z',因此永远不会满足比较

    for ($i = 'a'; $i != 'aa'; $i++) 
        echo "$i\n";

    Antwort
    0
  • P粉308089080

    P粉3080890802024-01-22 09:22:34

    来自文档

    来自评论:-
    还需要注意的是,<=是字典顺序比较,因此'z'+1 ≤ 'z'。 (因为 'z'+1 = 'aa' ≤ 'z'。但是 'za' ≤ 'z' 是第一次比较为 false。)例如,$i == 'z' 就可以。

    示例

    Antwort
    0
  • StornierenAntwort