编程:从入门到放弃
    前言
    语言和环境
    +=
    C和C++
    Hex
    Map
    Scope(1):"这"是啥
    Scope(2)
    Singleton
    什么顺序
    从A到Z
    函数
    切分字符串
    初始化(1)
    初始化(2)
    单引号,还是双引号
    参数传递
    左,还是右
    引用
    时间(1)
    时间(2)
    时间(3)
    时间(4)
    时间(5)
    比大小
    流氓甘地
    相等,还是不等(1)
    相等,还是不等(2)
    相等,还是不等(3)
    相等,还是不等(4)
    第一个说了算,还是最后一个
    语言和环境
    除以0
    随机数

什么顺序

Updated: 2021-12-12

入门。

一般的语言都会提供 array/list,dict/map,set 等数据结构。而 PHP 里只有一个 array 用来应付各种情况,它的 key 既可以是数字也可以是字符串。

放弃?

Pyton 中将一个 dict 打印出来时,是按照 key 排序过的。

>>> a = {}
>>> a[3] = 'three'
>>> a[0] = 'zero'
>>> for key in a: print(a[key])
...
zero
three

PHP 里打印出来的顺序确是反的:

hphpd> $a = array();
$array = array()
hphpd> $a[3] = 'three';
$a[3] = 'three';
hphpd> $a[0] = 'zero';
$a[0] = 'zero';
hphpd> foreach ($a as $val) { print $val."\n"; }
foreach ($a as $val) { print $val."\n"; }
three
zero

进阶!

PHP 的 array 按插入顺序进行迭代。所以必须人工排序

hphpd> ksort($a)
ksort($a)
hphpd> foreach($a as $val) { print $val."\n"; }
foreach($a as $val) { print $val."\n"; }
zero
three