Indexes can be values of any scalar type, incl. strings.
This provides both scalar and associative arrays (hash tables).
E.g.
$a[0] = "abc"; $a[1] = 'def'; $a[2] = ghi; $b['abc'] = 0; $b[def] = 1; $b["ghi"] = 2;
Internally, all indexes are treated as strings, so PHP really has only hash tables.