数密钥长度php

时间:2014-02-18 21:31:59

标签: php arrays key

我无法在任何地方找到如何使用键和字符长度来创建数组。

示例:

<?php
$array = array("ab" => 145, "bassfasdf" => 13, "cdfsa" => 2684);


print_r($array);
?>

我希望输出这个:

Array
(
    [ab] => 2
    [bassfasdf] => 9
    [cdfsa] => 5
)

有没有人知道如何做到这一点?

3 个答案:

答案 0 :(得分:2)

$array = array("ab" => 145, "bassfasdf" => 13, "cdfsa" => 2684);
foreach ($array as $key => &$value) {
   $value = strlen($key);
}

答案 1 :(得分:0)

可能是一个较短的方式:

$result = array_combine($keys=array_keys($array), array_map('strlen', $keys));

答案 2 :(得分:0)

您可以使用array_map函数或foreach循环,如下所示:

$array = array("ab" => 145, "bassfasdf" => 13, "cdfsa" => 2684);
$keyLengths = array();
foreach ($array as $key=>$value)
{
    $keyLengths[$key] = strlen($key);
}