PHP〔数组键〕:转换;0”;Into“;A”";1〃;Into“;B〃;..(因此“89”将是“IJ”)函数


PHP [Array Keys] : Convert "0" Into "A", "1" Into "B"... (and so "89" will be "IJ") Function

假设我有一个这样的数组:

$array = array
("this","is","me","and","I","am","an","array","hello","beautiful","world");

如何创建一个函数,将0转换为"a",将1转换为"B"使用Foreach还是

因此,代替

 Array
(
    [0] => this
    [1] => is
    [2] => me
    [3] => and
    [4] => I
    [5] => am
    [6] => an
    [7] => array
    [8] => hello
    [9] => beautiful
    [10] => world
)

我会得到

 Array
(
    ['A'] => this
    ['B'] => is
    ['C'] => me
    ['D'] => and
    ['E'] => I
    ['F'] => am
    ['G'] => an
    ['H'] => array
    ['I'] => hello
    ['J'] => beautiful
    ['BA'] => world
)
function digits_to_letters($input) {
    return strtr($input, "0123456789", "ABCDEFGHIJ");
}
$result = array_flip(array_map("digits_to_letters", array_flip($original)));

(运行示例:http://ideone.com/TQNYj)


如果你更喜欢foreach而不是array_flip+array_map,你可以使用这个:

$result = array();
foreach($original as $k => $v) {
    $result[strtr($k, "0123456789", "ABCDEFGHIJ")] = $v;
}